目录
教学资源
教学运行
提醒实验1: 数据建模与分析实验(I01) 返回
实验课程:
信息系统开发与设计
开课学院:
商学院
开课专业:
信息管理与信息系统
教材:
软件:
实验指导:
实验介绍

实验1: 数据建模与分析实验(I01

一、实验名称和性质

 

所属课程

信息系统分析与设计

实验名称

数据建模与分析实验

实验学时

2

实验性质

□验证 □综合 设计

必做/选做

必做 □选做

二、实验目的

1.掌握E-R模型的绘制方法。

2.能将E-R模型转换为关系模型,并在关系模型中实现表间关联。

3.根据需求描述,利用Visio进行E-R模型的构建。

三、实验的软硬件环境要求

硬件环境要求:

本实验需要为每个学生提供一台个人计算机。

使用的软件名称、版本号以及模块:

本实验需要配备的软件包括:Visio 2003

四、知识准备

前期要求掌握的知识:

数据库设计的概要设计阶段中,设计人员要从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模型,然后再把概念模型转换成逻辑模型。

实验相关理论或原理:

设计ER图步骤:

1.对现实世界进行需求分析

包括了解组织机构情况,为分析信息流做准备;了解各部门业务情况,调查各部门输入和使用的数据及处理数据的方法与算法;确定数据库的信息组成及计算机系统应实现的功能。

2.设计局部E-R图。

基于实体集、联系、多重性、关联实体等概念,进行局部E-R图的构建。

3.合并局部E-R

将局部E-R图合并成全局E-R图,合并时要注意消除冲突、消除冗余。

4.从E-R图导出计算机世界的关系数据模型。

其中每个实体转换为一个关系,E-R图中的联系,则根据多重性进行不同转换。

五、实验内容

1.按验证性实验的具体要求逐步完成指定题目,观察并记录实验的结果。

2.按具体要求完成设计性实验的题目,设计结果记录在实验报告上。

六、验证性实验

1.实验要求

某银行储蓄业务包括各种币种储蓄的本金和利息的相关业务。所有储蓄业务都通过银行折子或一卡通进行操作,银行折子和一卡通之间是关联账户,而储蓄又有多种类型:整存整取存款,零存整取存款,活期储蓄存款,定活两便存款。通过储蓄业务系统,银行客户可以方便的进行开户、销户、补办、挂失、解挂、修改密码、存款、取款、转账等操作。

请为该系统设计E-R图,并将其转换为关系模型。

2.实验步骤

1)在Visio中绘制具体的ER模型如图1示:

1 银行储蓄业务管理信息系统的ER

其中关键步骤提示如下:

步骤一:在“文件”菜单上,选择“新建”,选择“数据库”,选择“数据库模型图”;

步骤二:将绘图页的缩放比例调整为100%

步骤三:将“实体关系”工具栏中的“实体”拖到绘图页,并在“数据库属性”对话框中输入相关信息,其中tbCards的基本信息图2所示。

2 数据库属性录入界面

步骤四:将“实体关系”工具栏中的“关系”拖到绘图页,并使其箭头指向一对多中一的一方。

步骤五:单击建立好的关系,在打开的“数据库属性”页中选择已建好的联系的对应属性,选择“断开连接”则取消原有连接(如图3所示),选择两表中的对应属性,点击“关联”,可建立新的关系。









3 关系的数据库属性窗口

2E-R模型转换为关系模型

经过转换得到7个关系:

tbCustomers(custIdCardNo,custName,custAddress,custPhone,custNo)

tbCards(cardNo,cardIdCardNo_custIdCardNo,cardBusinessNo,cardPassword,cardLoss,cardLossDate,cardBalance)

tbDeposit(depoFlowNo,depoCardNo_cardNo,depoOperateDate,depoMaturity,depoFromCardNo_cardNo,Depo Money)

tbFetch(fetFlowNo,fetCardNo_cardNo,fetOperateDate,fetToCardNo_cardNo,fetchMoney,receiptFlowNo)

tbOperators(optAccount,optName,optPassword,optWorkNo)

tbFeeAgent(fagKind,fagName,fagCardNo_cardNo)

tbDepositAgent(dpaflowNo,dpaKind_fagKind,dpaOperateDate,dpaCardNo_cardNo,dpaCustomerNo,dpaMoney)

 

3)数据字典设计

A.表名

各表表名及说明如表1所示:

1 银行储蓄业务管理信息系统各表表名及说明

表名

功能说明

tbCustomers

客户信息表,记录客户的基本信息及对应的卡信息

tbCards

子帐号信息表,记录客户的各子卡信息

tbDesposit

存款明细表,记录客户存款信息

tbFetch

取款明细表,记录客户取款信息

tbOperators

操作员信息表,记录操作员的操作帐号及基本信息等

tbDepositAgent

代缴费用明细表,记录代缴费用的信息明细

TbFeeAgent

代缴费用单位信息表,记录代缴费用单位及对应卡号

 

B.表结构

tbCustomers的结构如表2所示:

表2 tbCustomers的表结构

表名

tbCustomers客户信息表,简写cust

列名

数据类型(精度范围)

/非空

约束条件

custIdCardNo

Char(18)

非空

主键,15位或者18位,末位可以是数字或字母,其他位必须是数字

custName

Varchar(20)

非空

 

custAddress

Varchar(20)

 

 

custPhone

Varchar(20)

 

 

custNo

char

非空

自动生成

补充说明

 

 

tbCards的结构如表3所示:

表3 tbCards的表结构

表名

tbCards(子帐号信息表,简写card)

列名

数据类型(精度范围)

/非空

约束条件

cardNo

Char(5)

非空

主键,10位根据银行卡输入

cardIdCardNo

Char(10)

非空

外健(tbCustomers(custIdCardNo))

cardBusinessNo

Char(2)

非空

1位表示币种,第2位表示储蓄种类,

cardPassword

Char(6)

非空

 

cardOpenDate

date

非空

开户当前时间

cardLoss

bool

非空

挂失状态有:0-正常、1-挂失

cardLossDate

Date

非空

当前系统时间

cardBalance

Decimal(10,2)

 

 

补充说明

销户则将记录从表中删除,将该记录插入到tbCardsHistory表中去。






 

tbDeposit的结构如表4所示:

表4 tbDeposit的表结构

表名

tbDeposit存款明细表,简写depo

列名

数据类型(精度范围)

/非空

约束条件

depoFlowNo

Char(15)

非空

主键,8位为日期,后7位顺序生成

depoCardNo_cardNo

char(10)

非空

外键(tbCards(cardNo))

depoOperateDate

date

非空

操作当前日期,自动生成

depoMaturity

Varchar(10)

 

 

DepoOperatorNo_ optAccount

Char(10)

非空

外键(tbOperators(optNo))

depoFromCardNo_cardNo

Char(10)

 

外键(tbCards(cardNo))

DepoMoney

Decimal(10,2)

非空

 

补充说明

币种中用用数字表示:1-人民币,2-美元,3-港元,4-日元,5-欧元;

储蓄种类用数字表示:1-活期,2-整存整取,3—零存整取,4-定活两便

depoMaturity用于存放定期等存款业务的存期说明

 

tbFetch的结构如表5所示:

表5 tbFetch的表结构

表名

tbFetch取款明细表,简写fet

列名

数据类型(精度范围)

/非空

约束条件

fetFlowNo

Char(15)

非空

主键,8位为日期,后7位顺序生成

fetCardNo_cardNo

Char(10)

非空

外键(tbCards(cardNo))

fetOperateDate

date

非空

操作当前日期,自动生成

fetToCardNo_cardNo

Char(10)

 

外键(tbCards(cardNo))

DepoOperatorNo_ optAccount

char(10)

非空

外键(tbOperators(optNo))

fetchMoney

Decimal(10,2)

非空

 

fetReceiptFlowNo_depoFlowNo

Varchar(50)

 

外键(tbDeposit(flowNO))

补充说明

receiptFlowNo对于定期取款、零存争取等操作原存单流水号;

 

 

tbOperators的结构如表6所示:

表6 tbOperators的表结构

表名

tbOperators操作员信息表,简写opt

列名

数据类型(精度范围)

/非空

约束条件

optAccount

Varchar(10)

非空

主键

optName

Varchar(20)

非空

 

optPassword

Varchar(20)

非空

不能明文存放

optWorkNo

Varchar(20)

非空

工作人员工号

补充说明

 

 

tbFeeAgency的结构如表7所示:

表7 tbFeeAgency的表结构

表名

tbFeeAgency(代缴费用种类表,简写fag

列名

数据类型(精度范围)

/非空

约束条件

fagKind

Varchar(10)

非空

主键,

fagName

Varchar(30)

非空

 

fagCardNo_cardNo

Char(10)

非空

外键(tbCards(cardNo))

补充说明

费用类型用字符表示:电信固话、电信网费、移动话费、煤气费、水费、电费

 

tbDespositAgency的结构如表8所示:

表8 tbDespositAgency的表结构

表名

tbDespositAgency(代缴费用明细表,简写dpa

列名

数据类型(精度范围)

/非空

约束条件

dpaflowNo

Char(15)

非空

主键,8位为日期,后7位顺序生成

dpaKind

char(10)

非空

外键,      (tbFeeAgency(feeKind))

dpaOperateDate

date

非空

操作当前日期,自动生成

DpaOperatorNo_ optAccount

Char(10)

非空

外键(tbOperators(optAccount))

dpaCardNo_cardNo

char(10)

 

外键(tbCards(cardNo))

dpaCustomerInfo

Char(10)

 

 

dpaMoney

Decimal(10,2)

非空

 

补充说明

dpaCustomerInfo记录交费者相关信息

 

七、设计性实验

1.实验要求

以嘉兴学院图书馆主页中“我的图书馆”为原型,自行选择自定义图书馆管理系统的开发范围,针对该范围设计ER图,并将ER图转化为关系模型。其中图书馆管理系统部分页面如图4-6所示。

4 图书馆目录检索功能页面

5 图书馆分类导航页面

6 个人借书历史显示页面