银行ATM数据库设计

银行ATM数据库设计

ID:37240015

大小:1.47 MB

页数:26页

时间:2019-05-10

银行ATM数据库设计_第1页
银行ATM数据库设计_第2页
银行ATM数据库设计_第3页
银行ATM数据库设计_第4页
银行ATM数据库设计_第5页
资源描述:

《银行ATM数据库设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、ATM取款机系统数据库设计问题描述某银行拟开发一套ATM取款机系统,实现如下功能:1、开户(到银行填写开户申请单,卡号自动生成)2、取钱3、存钱4、查询余额5、转账(如使用一卡通代缴手机话费、个人股票交易等)现要求对“ATM柜员机系统”进行数据库的设计并实现,数据库保存在D:bank目录下,文件增长率为15%。问题分析-1字段名称说明customerID顾客编号自动编号(标识列),从1开始,主键customerName开户名必填PID身份证号必填,只能是18位或15位,身份证号唯一约束telephone联系电话必填,格式为x

2、xxx-xxxxxxxx或手机号13位address居住地址可选输入用户信息表:userInfo:问题分析-2银行卡信息表:cardInfo字段名称说明cardID卡号必填,主健,银行的卡号规则和电话号码一样,一般前8位代表特殊含义,如某总行某支行等。假定该行要求其营业厅的卡号格式为:10103576xxxxxxx开始,每4位号码后有空格,卡号一般是随机产生。curType货币种类必填,默认为RMBsavingType存款类型活期/定活两便/定期openDate开户日期必填,默认为系统当前日期openMoney开户金额必填,不

3、低于1元balance余额必填,不低于1元,否则将销户pass密码必填,6位数字,开户时默认为6个“8”IsReportLoss是否挂失必填,是/否值,默认为”否”customerID顾客编号外键,必填,表示该卡对应的顾客编号,一位顾客允许办理多张卡号问题分析-3字段名称说明transDate交易日期必填,默认为系统当前日期cardID卡号必填,外健,可重复索引transType交易类型必填,只能是存入/支取transMoney交易金额必填,大于0remark备注可选输入,其他说明交易信息表:transInfo难点分析-1设计

4、ER图、建库、建表、加约束、建关系部分建库语句:CREATEDATABASEbankDBON(NAME=‘…',FILENAME=…',SIZE=…,FILEGROWTH=…)LOGON(….)建表语句:CREATETABLE表名(customerIDINTIDENTITY(1,1),customerNameCHAR(8)NOTNULL,…..)文件增长率数据文件日志文件自动编号,从1开始非空/必填难点分析-2设计ER图、建库、建表、加约束、建关系部分建约束语句:ALTERTABLEcardInfoADDCONSTRAINTP

5、K_cardIDPRIMARYKEY(cardID),CONSTRAINTCK_cardIDCHECK(cardIDLIKE'10103576[0-9]…'),CONSTRAINTDF_curTypeDEFAULT('RMB')FORcurTypeCONSTRAINTFK_customerIDFOREIGNKEY(customerID)REFERENCESuserInfo(customerID),CONSTRAINTUQ_PIDUNIQUE(PID),…..主键约束检查约束外键约束(建关系)唯一约束默认约束难点分析-3字段名称

6、说明customerID顾客编号自动编号(标识列),从1开始,主键customerName开户名必填PID身份证号必填,只能是18位或15位,身份证号唯一约束telephone联系电话必填,格式为xxxx-xxxxxxxx或手机号13位address居住地址可选输入建表时:IDENTITY(1,1)check约束:len()函数建表时:NOTNULLcheck约束:like‘[0-9][0-9]…’设计ER图、建库、建表、加约束、建关系部分子查询:SELECT....FROM…WHEREtransMoney=(SELECT…F

7、ROM…)内部连接:SELECT…FROMuserInfoINNERJOINcardInfoON…..SQL编程:DECLARE@inMoneymoneySELECT@inMoney=sum(transMoney)from..where(transType='存入')视图:CREATEVIEWview_userInfoAS…--SQL语句GO难点分析-4声明变量插入测试数据、常规业务模拟、创建索引视图部分给变量赋值的两种方法:SELECT或SET测试视图:SELECT..FROMview_userInfo…创建存储过程:CRE

8、ATEPROCEDUREproc_takeMoney@cardchar(19),@typechar(4),@inputPasschar(6)=''AS…..—SQL语句GO调用存储过程:EXECproc_openAccount'李四','321245678912345678'

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。