SQL项目实战银行ATM系统.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL项目实战银行ATM系统

项目实战 银行ATM(取款机)系统 第一部分 问题描述 某银行拟开发一套ATM取款机系统,实现如下功能: 开户(到银行填写开户申请单,卡号自动生成) 取钱 存钱 查询余额 转账(如使用一卡通代缴手机话费,个人股票交易等) 现要求对“ATM柜员机系统”进行数据库的设计并实现,数据库保存在F:\bank目录下,文件增长率为15% 第二部分 环境要求 开发工具:SQL Server2000企业版、PowerDesigner 第三部分 问题分析 用户信息表: userInfo 见表1.1 表1.1 用户信息表 字 段 名 称 说 明 customerID 顾客编号 自动编号(标识列),从1开始,主键 customerName 开户名 必填 PID 身份证号 必填,只能是18位或15位,身份证号唯一约束 telephone 联系电话 必填,格式为xxxx-xxxxxxxx或手机号11位 Address 居住地址 可选输入 银行卡信息表: cardInfo 见表1.2 表1.2银行卡信息表 字 段 名 称 说 明 cardID 卡号 必填,主键,银行的卡号规则和电话号码一样,一般前8位代表特殊含义,如某总行某支行等。假定该行要求其营业厅的卡号格式为:1010 3576 xxxx xxxx开始,每4位号码后有空格,卡号一般是随机产生 curType 货币类型 必填,默认为RMB savingType 存款类型 活期 / 定活两便 / 定期 必填 openDate 开户日期 必填,默认为系统当前日期 openMoney 开户金额 必填,不低于1元 balance 余额 必填,不低于1元,否则将销户 pass 密码 必填,6为数字,开户时默认为6个“8” IsReportLoss 是否挂失 必填,是/否值,默认为“否” customerID 顾客编号 外键,必填,表示该卡对应的顾客编号,一般顾客允许办理多张卡 交易信息表:transInfo 见表1.3 表1.3 交易信息表 字 段 名 称 说 明 transDate 交易日期 必填,默认为系统当前日期 cardID 卡号 必填,外键,可重复索引 transType 交易类型 必填,只能是存入/支取 transMoney 交易金额 必填,大于0 remark 备注 可选输入,其他说明 第四部分 实现步骤 设计数据库E-R模型图(采用PowerDesigner建模工具) 提示:根据第三部分的各个表,绘制概念数据模型图(Conceptual Data Model )。 建库:要求保存在F:\bank文件夹下,取名为bankDB,文件增长率为15%。 提示:以下所有步骤的软件环境均为SQL查询分析器 在F盘创建文件夹bank。 提示:exec xp_cmdshell ‘mkdir f:\bank’,NO_OUTPUT 建库是要求检测是否存在bankDB,如果存在先删除再创建。 提示:参考上机相关代码 if exists(…) … 建表:创建用户信息表userInfo,银行卡信息表cardInfo,交易信息表transInfo 提示:参照第三部分各表提出的要求,确定表中各个字段的长度、数据类型,注意一个 汉字占两个字节。身份证号字段为了验证方便,一般保存为字符串;是/否挂失字段, 可保存为BIT(即1/0)类型。 加约束 根据第三部分“说明”一栏中的要求,分析每列相应的约束条件 例如: 主键,添加主键(Primary Key)约束 只能是18位或者15位,添加检查(check)约束。(利用字符串长度函数len() ) …… 同一个表的多个约束可以连写 例如: Alter TABLE cardInfo ADD CONSTRAINT PK_cardID PRIMARY KEY(cardID), CONSTRAINT CK_cardID CHECK(cardID,….), CONSTRAINT DF_cruType …. 建关系 提示:根据三表的字段,通过外键约束来建立表之间的关系 插入测试数据: 先假定卡号不自动随机产生,而是人工指定,向相关表中插入如下开户信息 张三开户 身份证:123456789012345, 电话:010 地址:北京海淀,开户金额:1000,活期,卡号:1010 3576 1234 5678 李四开户 身份证:321245678912345678 电话:0478 开户金额:1,定期,卡号:1010 3576 1212 1134 插入交易信息 张三的卡中取款900元 李四的卡中存款5000元 要求保存交易记录,以便

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档