数据库设计实验
|
实验环境:Windows 10操作系统、MySQL 8.0、Power Designer
|
实验内容与完成情况:
掌握数据库设计根本方法及数据库设计工具。
利用Power Designer数据库设计工具设计该数据库。
掌握数据库设计根本步骤,包括数据库概念构造设计、逻辑构造设计、物理构造设计,数据库形式SQL语句生成。可以使用数据库设计工具停止数据库设计。
设计一个采购、销售和客户管理应用数据库。其中,一个供给商可以供给多种零件,一种零件也可以有多个供给商。一个客户订单可以订购多种供给商供给的零件。客户和供给商都分属于不同的国家,而国家按世界五大洲八大洋划分地区。请利用Power Designer数据库设计工具设计该数据库。
识别出零件Part、供给商Supplier、客户Customer、订单Order、订单项Lineitem、国家Nation、地区Region等7个实体。每个实体的属性、码如下。
- 零件Part:零件编号 partkey、零件名称name、零件制造商mfgr、品牌brand、类型type、大小size、零售价格retailprice、包装container、备注comment。主码:零件编号 partkey。
- 供给商Supplier:供给商编号suppkey、供给商名称name、地址address、国籍nation、电话phone、备注comment等。主码:供给商编号suppkey。
- 客户Customer:客户编号custkey、客户名称name、地址address、电话phone、国籍nation、备注comment。主码:客户编号custkey。
- 订单Order:订单编号orderkey、订单状态status、订单总价totalprice、订单日期orderdate、订单优先级ordERPriority、记账员clerk、运送优先级shippriority、备注comment。主码:订单编号orderkey。
- 订单项Lineitem:订单项编号linenumber、所订零件号partkey、所订零件供给商号suppkey、零件数量quantity、零件总价extendedprice、折扣discount、税率tax、退货标志returnflag等。主码:订单项编号linenumber。
- 国家Nation:国家编号nationkey、国家名称name、所属地区region、备注comment。主码:国家编号nationkey。
- 地区Region:地区编号regionkey、国家名称name、备注comment。主码:地区编号regionkey。
根据实体语义,分析实体之间的联络,确定实体之间一对一,一对多和多对多联络。画出实体-联络图。
依照数据库设计原理中概念构造转化成逻辑构造的规则,每个实体转换成一个关系,多对多的联络也转换成一个关系。因而,根据上述画出的E-R图设计数据库逻辑构造。
- 使用Power Designer数据库设计工具设计数据库逻辑构造,翻开,并创建一个概念模型(CDM Conceptual Data Model)
- 在新建好的概念模型中,使用的最多的是Entity(实体)和Relationship(关系)
- 根据E-R图,新建一个供给商的Entity(实体),这里需要注意,书写name的时候,code自行补全,name可以是英文的也可以是中文的,但是code必需是英文的。
然后选择Attributes框,将供给商表的每一列设计好
各列说明:
·Name: 实体名字一般为中文如论坛用户
·Code: 实体代号,一般用英文如XXXUser
·Comment:注释对此实体详细说明。
·Code属性代号一般用英文UID DataType
·Domain域表示属性取值范围如可以创建10个字符的地址域
·M:Mandatory强迫属性,表示该属性必填。不能为空
·P:Primary Identifer是否是主标识符,表示实体店唯一标识符
·D:Displayed显示出来,默认全部勾选
设置的主标识符可以在Identifiers(标识符)这个模块删除or添加主标识符。
按确定键,供给商表则设计完成
- 使用Relationship(关系)这个按钮可以连接七个表之间的关系,发生一对多或者多对一的关系。
3.数据库物理构造设计
数据库物理构造首先根据逻辑构造自动转换生成,然后根据应用需求设计数据库的索引构造、存储构造。
在CDM设计界面上选择Tools->Check Model命令,检查CDM正确性,假设存在错误,检查并更正。
(2)将CDM转换成PDM(物理模型)
在CDM设计界而上选择Tools-Generate Physical Data Model命合,呈现PDM Generation Options对话框,在General选项卡中,设置转换生成的PDM根本属性,包括使用哪种DBMS。
(3)保管PDM
选择File->Save,保管该PDM。
生成MySQL数据库管理系统的SQL语句。
选择方才生成的物理概念模型,在对象阅读区展开Tables,点击各个表格,可以在表格中看到对应DBMS的SQL语句。
|
呈现的问题:
- 问题一:使用Relationship按钮建立关系时报错:
|
处置方案:
name可以是英文的也可以是中文的,但是code必需是英文的。同时code作为实体代号,每个表的code必需不同,一旦相同则报错。
|
实验心得:
通过对概念构造逻辑构造与物理构造的设计方法,理解和掌握学会了使用PowerDesigner设计数据库模型。掌握使用PowerDesigner将CDM转化为PDM的方法。同时,明白了创建数据库前对用户需求做出需求分析的重要性,越好的概念构造逻辑构造设计就能转化成好的物理构造设计,同时生成的对应DBMS的SQL语句也就越符合需求。
|