项目需求(ATM)
- 格式:doc
- 大小:28.00 KB
- 文档页数:2
UserInfo 用户表 表(1) CustomerId 顾客编号 <PK> CustomerName 开户名 <必填> PID 身份证号 <18位或15位,唯一约束> Telephone 联系电话 <格式为xxxx-xxxxxxxx 或 手机号11位> Address 居住地址 (可选输入) CardInfo 银行卡信息表 表(2) cardID
卡号 必填,主健,银行的卡号规则和电话号码一样,一般前8位代表特殊含义,如某总行某支行等。
假定该行要求其营业厅的卡号格式为:1010 3576 xxxx xxx 开始,每4位号码后有空格,卡号一般是随机产生[可选] curType
货币种类 必填,默认为RMB savingType
存款类型 活期/定活两便/定期 openDate
开户日期 必填,默认为系统当前日期 openMoney
开户金额 必填,不低于1元 balance
余额 必填,不低于1元,否则将销户 pass
密码 必填,6位数字,开户时默认为6个“8” IsReportLoss
是否挂失 必填,是/否值,默认为”否” customerID
顾客编号 外键,必填,表示该卡对应的顾客编号,一位顾客允许办理多张卡号
TransInfo 交易信息表 表(3)
transDate
交易日期 必填,默认为系统当前日期 cardID
卡号 必填,外健,可重复索引 transType
交易类型 必填,只能是’存入/支取’ transMoney
交易金额 必填,大于0 remark
备注 可选输入,其他说明 数据库项目
某银行拟开发一套ATM 取款机系统,实现如下功能:
1、开户(到银行填写开户申请单,卡号自动生成)
2、取钱
3、存钱
4、查询余额
5、转账(如使用一卡通代缴手机话费、个人股票交易等)
现要求对“ATM 柜员机系统”进行数据库的设计并实现
注*本文档数据字典以及需求均为参考,可按自己需求分析后做改动,根据需求做表的设计,对表的设计熟透之后才开始实现存储过程、触发器等。
需求:
一、创建数据库BankTS
二、创建表、建立主外键、约束、建立UserInfo、CardInfo表测试数据;[如:张三、李四两个用户]
三、常规业务:
(1) 使用事务处理完成:
张三的卡号取款900元,李四的卡号存款5000元
(2)统计银行的资金流通余额和盈利结算
资金流通余额=总存入金额-总支出金额
盈利结算=总支出金额*8‰ -总存入金额* 3‰
(3)查询本周开户的卡号,显示该卡相关信息;
(4)查询本月交易金额最高的卡号(子查询)
四、创建索引与视图
(1)为交易表的卡号cardID字段创建索引;
(2)创建视图[查询各表要求字段全为中文字段名]
卡号/开户名/开户日期/余额/存款类型/身份证号/电话号码/居住地址
五、创建触发器
实现发生交易时,根据是存入或是支出执行余额的相应更新,如果是支出,余额不足的情况,向用户报告错误消息.并输出相应的提示信息及卡号与所对应的余额;
六、创建存储过程
(1) 实现存钱或取钱业务
要求:参数有卡号、金额、交易类型、密码
如果密码不正确,或取钱时余额不足,需向用户报告错误消息
(2) 转帐事务的存储过程
要求:参数有卡号1、卡号2、金额。