好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数据库课程设计-任务书1-atm-1.10.doc

5页
  • 卖家[上传人]:F****n
  • 文档编号:99252793
  • 上传时间:2019-09-18
  • 文档格式:DOC
  • 文档大小:154.50KB
  • / 5 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 数据库课程设计——任务书 编号:01 题目ATM柜员机系统设计目标:1.要求达到熟练掌握关系数据库的基本知识和技能;2.能够利用所学的基本知识和技能,进行简单数据库应用程序的设计课程设计相关内容:1.设计系统的功能框图、数据库设计;2.设计管理系统后台数据库,使用T-SQL语句创建数据库中的各种对象;3.上机调试;4.答辩;5.书写课程设计报告课题背景:某银行拟开发一套ATM柜员机系统,实现如下功能:1、开户2、取钱3、存钱4、查询余额5、转账6、交易统计现要求对“ATM柜员机系统”进行数据库的设计并实现,数据库保存在C:\ATM目录下功能模块:一、创建数据库要求:数据库所有文件存放在C盘ATM文件夹下,主数据文件初始化大小为3MB,增长方式为15%,最大值为100MB,辅助数据文件初始化大小为3mb,不限定最大值,增长方式为2mb每次,日志文件初始化大小为3mb,不限定最大值,增长方式为15%任务:1)使用T-SQL语句创建数据库二、创建数据表用户信息如下:顾客编号:自动编号(标识列),从1开始,主键开户名: 必填身份证号:必填,只能是18位或15位,身份证号唯一约束,首位不能为0, 如果是18位,则7-12位必须是合法的出生年月,末位为0-9或X;如果是15位,则7-10位必须是合法出生年月,末位为0-9。

      联系:必填,格式为xxxx-xxxxxxxx(区号3位或4位,号码7-8位,区号、号码之间有分隔线,共13位)或号(号必须以1开头,第二位为3、5、8,共11位)居住地址:可选输入银行卡信息如下:卡号: 必填,主健,银行的卡号规则和号码一样,一般前8位代表特殊含义,如某总行某支行等假定该行要求其营业厅的卡号格式为:1010 3576 xxxx xxxx开始,每4位号码后有空格,卡号一般是随机产生,前八位为1010 3576,后八位每位数字在0-9之间货币种类:必填,默认为RMB(人民币),用户存款时只能存取JPY(日元)、GBP(英镑)、HKD(港币)、USD(美元)、EUR(欧元)存款类型:活期/定活两便/定期,默认活期开户日期:必填,默认为系统当前日期开户金额:必填,不低于1元余额: 必填,不低于1元 密码: 必填,6位数字,开户时默认为6个“8”是否挂失:必填,是/否值,默认为”否”顾客编号:外键,必填,表示该卡对应的顾客编号,一位顾客允许办理多张卡号交易信息如下:交易日期:必填,默认为系统当前日期卡号: 必填,外健交易类型:必填,只能是存入/支取交易金额:必填,大于0备注: 可选输入,其他说明任务:1)根据以上实体及其属性创建数据表2)根据表中每个属性的要求为数据表添加相应的约束注意:创建表时除了null、not null,identity这几个约束可以直接定义外,其他约束都需要通过alter table transInfo add constraint 语句单独添加。

      三、插入测试数据开户信息张三开户,身份证:1345,:010-,地址:北京海淀 开户金额:1000 活期 卡号:1010 3576 1234 5678李四开户,身份证:,:0478-, 开户金额: 1 定期 卡号:1010 3576 1212 1134王五开户,身份证:,:021-, 开户金额: 10000 定期 卡号:1010 3576 1212 2092交易信息:张三的卡号(1010 3576 1234 5678)取款900元李四的卡号(1010 3576 1212 1134)存款5000元说明:当存钱或取钱(如300元)时候,会往交易信息表(transInfo)中添加一条交易记录, 同时应更新银行卡信息表(cardInfo)中的现有余额(如增加或减少500元)任务:1)根据以上用户的信息,将三个用户的开户信息写到数据表中2)根据以上交易信息,将张三、李四的交易信息写到数据表中四、常规业务操作(一)修改帐户密码任务:1)、创建一个存储过程,根据卡号修改账户密码2)、执行存储过程将张三的密码修改为“”3)、执行存储过程将李四的密码修改为“”(二)挂失帐号王五的银行卡丢失,将其挂失任务:1)、创建一个存储过程,根据卡号挂失帐号,创建一个触发器,当卡号挂失时,自动删除该卡号的交易信息。

      2)、执行存储过程将王五(帐号为1010 3576 1212 2092)的帐号挂失(三)数据查询任务:1)、创建一个可以根据存款类型以及余额范围查询相应的卡号信息的存储过程2)、调用存储过程查询余额在3000~6000之间的定期卡号,显示该卡相关信息3)、查询本周开户的卡号,显示该卡相关信息4)、查询挂失帐号的客户信息5)、查询用户帐上余额少于200元帐户信息(四)数据统计任务:1)、统计银行的资金流通余额(总流入-总流出)和盈利(总流出*利率-总流出*利率)结算,存款代表资金流入,取款代表资金流出.假定存款利率为千分之3,贷款利率为千分之82)、查询交易金额总额高于1000的卡号,以及该卡号所属的客户姓名,该客户最高交易额,交易总额五)高级应用任务:1)、创建索引:给交易表的卡号cardID字段创建非聚集索引index_cardID2)、按指定索引查询 张三(卡号为1010 3576 1212 1134)的交易记录3)、创建3个视图:为了向客户显示信息友好,查询各表要求字段全为中文字段名,分别为用户信息视图view_userInfo、银行卡信息视图view_cardInfo、交易信息视view_transInfo。

      4)、创建取款的存储过程proc_takeMoney:取款金额为100的整数倍,且每次不能大于5000,另外取款后余额不能低于1元,同时如果帐户处于挂失状态则不可以取款5)、调用存储过程取钱,张三分别取300和60006)、创建存款的存储过程:存款金额为100的整数倍,且每次存款不能大于10000,,同时如果帐户处于挂失状态则不可以存款7)、调用存储过程存钱李四存500和110008)、创建产生随机卡号的存储过程proc_randCardID (一般用当前月份数\当前秒数\当前毫秒数乘以一定的系数作为随机种子),卡号前八位为:1010 35769)、测试产生随机卡号的存储过程10)、创建开户的存储过程proc_openAccount(开户时需要产生随机卡号)11)、调用存储过程为赵六、陈七开户12)、创建转帐的带有事务的存储过程:用户到银行ATM柜员机将用户自己帐户上的钱转账到其他帐户上,转账后余额不能低于1元,且每次转账不能高于5000元13)、测试转账存储过程,从李四的帐户转帐2000到张三的帐户14)、为ATMDB数据库添加2个用户C1、C215)、为ATMDB数据库添加1个角色R1,R1包含成员C1和C216)、R1可以查询数据库中的所有用户定义的数据表、视图17)、C1可以执行存款、取款的存储过程、但被禁止执行转账的存储过程18)、将数据库全库备份到备份设备文件BKATMDB上。

      七、重要说明1、所有数据表、其他数据库对象的设计都要按规范执行,如数据表名称、字段名称全部用英文或英文的简写描述,不可以用中文,程序中的注释可以用中文表示2、设计时要尽量联系平常所学C#或JAVA知识,如何设计数据库对象才能让软件界面上的操作最简单、最通用其他要求:1.数据对象创建的源代码要有适当的注释,使程序容易阅读2.写出课程设计报告,具体要求见相关说明文档应提交的材料:1.数据库源文件;2.课程设计报告;考虑到公司仍有部分低层及高层人员的补充,因此在选择招聘渠道供应商的附加值时以配送普工现场招聘会和高端人才交流会为佳,另外根据供应商平台实力,若能给公司提供合适的猎头服务也应当纳入甄选范畴。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.