合同数据库数据库设计.docx
《合同数据库数据库设计.docx》由会员分享,可在线阅读,更多相关《合同数据库数据库设计.docx(4页珍藏版)》请在冰豆网上搜索。
武汉理工大学《数据库综合实验》实验说明书
第2讲合同管理系统之数据库设计
2.1概念结构设计
将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。
根据需求分析形成的数据字典和数据流图,抽象得到的实体有:
合同(合同号,合同名,类别,签订时间,附件)
甲方(公司名称,代理人,联系方式)
乙方(公司名称,代理人,联系方式)
收付款账单(收付款账单号,合同号,应付金额,实付金额,付款截止日期)
索赔账单(索赔账单号,合同号,索赔原因,索赔金额,索赔时间)
预结算统计表(合同号,预算金额,结算金额)
实体之间的联系如下:
一个合同对应一个甲方和一个乙方
甲方和乙方可以签订多个合同
一个甲方和一个乙方可以对应多张收付款账单
一张收付款账单只对应一个甲方一个乙方
一个索赔账单对应一个合同,一个合同可以没有索赔账单也可以有多张索赔账单
一个合同对应一个预结算统计表
合同子系统E-R图如图2.1所示。
预算金额
结算金额
合同号
联系方式
公司名称
代理人
n
1
预结算
甲方
预结算账单
1
合同名
合同号
1
收款
类别
签订合同
n
合同
附件
签订时间
n
1
合同号
收付款账单号
应付金额
付款截至日期
收付款账单
n
索赔账单号
付款
最近一次付款日期
实付金额
合同号
1
n
1
索赔
索赔账单
乙方
索赔原因
公司名称
代理人
索赔时间
联系方式
索赔金额
图2.1合同子系统E-R图
2.2逻辑结构设计
逻辑设计的任务就是把概念设计阶段设计的E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。
实体转换的关系模式有甲方、乙方、合同、收付款账单、预结算账单、索赔账单。
因为甲方只有一个,所以将甲方与乙方合并为一个实体称为签署方。
“签订合同”联系与合同关系模式合并。
“收款”与“付款”联系与收付款账单关系模式合并。
“预结算”联系与预结算帐单关系模式合并。
“索赔”联系与索赔帐单关系模式合并。
合同子系统的关系模式如下:
合同(合同号,合同名,类别,甲方公司名称,乙方公司名称,签订时间,附件)
签署方登记表(公司名称,代理人,联系方式)
收付款账单(收付款账单号,合同号,甲方公司名称,乙方公司名称,应付金额,实付金额,付款截止日期,最近一次付款日期)
索赔账单(索赔账单号,合同号,索赔公司名称,索赔原因,索赔金额,索赔时间)
预结算统计表(合同号,预算金额,结算金额)
因为合同是本公司与其他公司签订的,预结算也是本公司进行预算,所以所有进行预结算的甲方都是一样的,所以表中就没有写甲方公司名称了。
定义用户子模式如下:
合同基本信息(合同号,合同名,类别,甲方公司名称,乙方公司名称,签订时间)
结帐单(收付款账单号,合同号,甲方公司名称,乙方公司名称,应付金额,实付金额,付款截止日期,最近一次付款日期)
索赔账单(索赔账单号,合同号,索赔公司名称,索赔原因,索赔金额,索赔时间)
预结算账单(合同号,预算金额,结算金额)
签署方信息(公司名称,代理人,联系方式)
2.3物理结构设计
为一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程就是数据库的物理设计。
数据库在物理设备上的存储结构与存取方法称为物理结构。
住宿数据库的数据文件、日志文件存放到指定的硬盘上,该硬盘最好不安装操作系统、DBMS等软件,数据库备份文件存放到移动硬盘。
根据处理需求,建立相关索引,如表2.1所示:
表2.1索引列表
关系模式
索引属性列
索引类型
合同
合同名
签署方信息表
公司名称
收付款账单
收付款账单号
索赔账单
索赔账单号
预结算统计表
合同号