高级数据库设计与应用 05 - XML数据库建模

一、实验目的

  1. 本实验关键之处在于,要求训练并掌握书写数据库设计文档的能力, 并且能利用学过的XML数据库进行模式的创建,实现学而致用的习惯。
  2. 同时,也要求梳理实验中所涉及到的实验重点和难点知识,即:XML数据库模式的设计和XML结构体系,要求在把数据存储形式转变为XML形式后,形成自己的关于XML数据库模式设计和创建的相关知识体系。

 

 

 

二、实验内容

实验背景导入:

某公司接到一个网购系统的项目,任命你做该任务的数据库设计师,对网购系统进行数据库整体的设计。Webshop就是一个B2C模式的电子商城,该电子商务系统能够实现包括前台用户和后台管理两大部分。

其中,前台购物系统包括会员注册、会员登录、商品展示、商品搜索、购物车、产生订单和会员资料修改等等功能。后台管理系统包括管理用户、维护商品库、处理订单、维护会员信息和其他管理功能。

根据系统功能描述和实际业务分析,进行电子商城的数据库相关设计,完成如下实验需求:

  1. 需求分析说明书。

在数据库设计初期,首先进行系统功能需求说明书编写。这一环节上需完成系统初步的功能需求说明文档。

  1. XSM模型设计。

进入XML逻辑设计阶段,需要进行实体关系模型的设计,将现实的系统经过抽象后运用学过的XML内容进行XSM建模。在这一环节中,需完成上述的四个实验内容才进行。

 

 

 

 

三、实验平台

软件:POWER DESIGNER,WORD

   

 

 

四、实验步骤

由于在实验一时,已经完成了相关的需求分析说明书,此处便不再反复。在数据库设计初期,进行系统功能需求说明书编写。此部分详见实验一。

  1. XSM模型设计。

下面列举的是整个实验过程中,涉及到的一些操作步骤,和关于POWER DESIGNER在本实验中的某些需求的实现方法:

①   打开powerdesigner,点击“文件”菜单,再选择“新建模型”;

②   在“新建模型”界面,在“类型”中选择“信息”,在“类型项”中选择“XML”,然后点击“OK”;

③   在右侧的工具栏中,在“XML模型图”下点击“元素”图标,然后在主窗口上点击一次,就生成一个元素;

④   双击某个元素,在弹出窗口中选择“属性”标签,可以增加属性,然后“预览”标签,可以查看元素定义的XML文本;

⑤   在右侧的工具栏中,在“XML模型图”下点击“元素”图标,然后在某个元素上点击一次,即可以在该元素下增加一个子元素;

⑥   在右侧的工具栏中,在“XML模型图”下点击“复杂类型”图标,然后在主窗口上点击一次,就生成一个复杂类型;

⑦   双击某个复杂类型,在弹出窗口中选择“属性”标签,可以增加属性,然后“预览”标签,可以查看复杂类型定义的XML文本。

 

 

 

 

五、运行结果

  1. 需求分析说明书。关于此部分,详见实验1的设计部分,略。
  2. XSM模型设计

如图5-1所示,是本实验的整体XSM模型。本实验关于XSM模型设计,所采用的是复杂数据类型中组的定义方法,也就是组的参照来源可以是整个元素的对象,也可以是单个复杂类型。但和单个复杂类型不同的是,使用组的方法的时候,既可以将一个目标实例化成一个对象,也能实例化为一个复杂的类型。

高级数据库设计与应用 05 - XML数据库建模_第1张图片 

图5-1 整体XSM模型

 

        在上面这个整体XSM模型中,出于设计稿面的需求,而没有列举末梢元素的详细数据类型。以下,是将整个XSM模型进行拆分为七个模块,也将这七个模块分别实例化成xml形式的文档。

这七个模块分别是:商品类型、员工用户、商品信息、会员用户、订单详情、订单信息,以及支付类型,具体详见以下内容:

 

1)      RD_COMMODITY_TYPES商品类型模型,如下:

 高级数据库设计与应用 05 - XML数据库建模_第2张图片

"1.0"?>



 

  0001

  推荐

  01

 

 

  0002

  热点

  02

 

 

 

2)      RD_EMPLOYEES员工用户模型,如下:

高级数据库设计与应用 05 - XML数据库建模_第3张图片 

"1.0"?>



 

  0001

  123456

  张三

  03-3月 -19

  
北京八达岭
1109635 53425223 98 销售部门 北京岭科技有限公司
0002 123456 李四 03-3月 -19
杭州西湖边
1109635 53425223 98 作坊 西湖臭豆腐西施作坊

 


  

3)      RD_GOODS商品信息模型,如下:

高级数据库设计与应用 05 - XML数据库建模_第4张图片 

  

"1.0"?>



 

  0001

  0.8

  豆浆

  23.5

  2017-32-23

0000220208257F4C4F5E8846809E167003A33DE7567903A3E017164E92B6AEB24EFC68ACB0

 

 

  0002

  0.8

  无人机

  23.5

  2017-32-23

0000220208257F4C4F5E8846809E167003A33DE7567903A3E017164E92B6AEB24EFC68ACB0

 

 

 

 

4)      RD_MEMBERS会员用户信息模型,如下:

高级数据库设计与应用 05 - XML数据库建模_第5张图片 

  

"1.0"?>



 

  0001

  123456

  昊哥

  18-11月-19

  
广西南宁
1008611 10010 100 喜欢电子产品 教师
0002 123456 小弟 18-11月-19
广西藤县
10010 1008611 100 喜欢麻婆豆腐 学生

 

 

5)      RD_ORDER_DETAILSS订单详情信息模型,如下:

高级数据库设计与应用 05 - XML数据库建模_第6张图片 

"1.0"?>



 

  0001

  OK

0000220208A9FA6DA5A45442C389A2FE43D4FEC10A4592F3AFBA0847778C2C3007B8E9CC54

000022020805638F9B0CAE4903AB0741146B880F2A9C2E9B64584D420E92F38A5D0ABC39DA

0000220208764E2860152D4F70B3A869DD82361E5379225ACE0AC44544B0230F4854E6C588

0000220208CEDFD42D87E34731BA8D5CA01813BD16C3C3FD52C4354F53825B30F61E7C3015

 

 

  0002

  OK

000022020838B293D236AE443AA95C6B45B00D22954592F3AFBA0847778C2C3007B8E9CC54

000022020806D23EC66465455182841041FA8756779C2E9B64584D420E92F38A5D0ABC39DA

00002202084786E2C886A0498E844CFF540F88CC9879225ACE0AC44544B0230F4854E6C588

000022020830F85A99C86E4F41AC84767197DE1B6AC3C3FD52C4354F53825B30F61E7C3015

 

 


  

 

6)      RD_ORDERS订单信息模型,如下:

高级数据库设计与应用 05 - XML数据库建模_第7张图片 

"1.0"?>



 

  0001

  4

  23

  2017-23-07

0000220208E611B44D00F44C299E8E37AE78D4CC04DED32AE083314F0DA4AF683A627A2E58

 

 

  0002

  4

  23

  2017-23-07

00002202084ED2795A47C8479B8C9D1010A2641A2CDED32AE083314F0DA4AF683A627A2E58

 

 


  

 

7)      RD_PAYMENT_TYPES支付类型信息模型,如下:

 

"1.0"?>



 

  0001

  支付宝

 

 

  0002

  微信

 

 

  

 

 

 

 

六、实验总结

通过本实验,相关总结和经验收获,可分点总结如下:

  1. 本实验在XML逻辑设计阶段中,主要是利用PowerDesigner进行实体关系模型的设计,将实现的系统经过抽象后得到XSM模型;
  2. 在正式开始实验前,由于自身对XSM模型的绘制有所短缺,需得经过学习https://wenku.baidu.com/view/e104602652d380eb62946da7.html,即:XML模型及PowerDesigner实现的知识点后,形成了一定的认识,以及关于XSM模型如何绘制的相关知识体系;
  3. powerdesigner 绘制物理模型 关系箭头方向是子类指向父类;绘制概念模型的箭头方向与物理模型相反;
  4. 数据库德逻辑结构设计的结果不是唯一的,为了提高数据库应用系统的性能,还应该根据应用需要适当的修改,调整关系模式,这就是数据模型的优化。

你可能感兴趣的:(高级数据库设计与应用 05 - XML数据库建模)