不需要

没有人的生活能不需要it互联网、搜索引擎

« 傲游3.0 Alpha2版测试因ARP攻击引起局域网中断引发的病毒原理分析 »

用rose建立数据库表

用rose建立数据库表

  1 引言
  
  Rational Rose 是一个完全的,具有能满足所有建模环境(Web开发,数据建模,Visual Studio和 C++ )需求能力和灵活性的一套解决方案。通过在软件开发周期内使用同一种建模工具可以确保更快更好的创建满足客户需求的可扩展的、灵活的并且可靠的应用系统。利用这个工具,可以建立用UML描述的软件系统模型,而且可以自动生成和维护C++、Java、VB和Oracle等语言和系统的代码。而在这里我要给大家介绍的是如何用Rose建立数据库和数据库表,这是我在用Rational Rose进行软件系统设计、建模时通过资料的搜集和实践得来的一点经验,下面我就将具体方法介绍给大家,希望能够对大家有所帮助。
  
  2 用Rational Rose建立数据库表
  
  在用Rational Rose建立数据库表之前,必须保证电脑安装了Rational Rose 2003和SQL Server 2000。这里以一个System库为例,命名新的数据库名为SystemRose;新建三个表 Teachers、Students和Card表,用Card表来建立表间关系,其他依此类推。
  2.1 具体的操作步骤
  Step 1:打开Rational Rose 2003,新建一个MDL文档,命名为System.mdl。
  Step 2:展开左上方面板中的“Componet View”,选中“Componet View”后单击右键依次选择“Data ModeleràNewàDatabase”(如图1所示),即可新建一个Database,将其命名为SystemRose(如图2所示),这个就是会出现在SQL Server中的新库名。这里可以注意到,Rose已经自动在“Logical View”中新建了两个包“Global Data Types”和“Schemas”。
  Step3:选中“SystemRose”单击右键选择“Open Specification”,在弹出的窗口中选择“Target”为“Micfosoft SQL Server2000.x”,如图3所示。
  Step 4:新建SystemRose的表空间。选中“SystemRose”单击右键,依次选择“Data ModeleràNewàTablespace”(如图4所示),一般情况下,请把表空间命名成“PRIMARY”。
  Step 5:选中“Logical View”中的“Schemas”,单击右键选择“Data ModeleràNewàSchema”(如图5所示),新建一个Schema,默认名为S_0。
  Step 6:选中“S_0”单击右键选择“Data ModeleràNewàData Model Diagram”(如图6所示),新建一个Data Model Diagram,取名为Main,双击这个Main图标,可以看到工具栏有变化,出现了新的工具栏。
  Step 7:选中“S_0”单击右键选择“Open Specification”, 将DataBase选择为” SystemRose”,表明从属关系(如图7所示)。  
  Step 8:在模式“S_0”下新建三个表Card、Teachers和Students,这里以建立Card表为例,介绍怎么在Rose2003中建立表格,以及如何设置主键、选择数据类型以及数据长度等。
  1)选中工具栏中的“Table” 工具,在Main数据视图中按下鼠标左键新建一个名为“T_0”的表格;
  2)双击T_0表格,设置表格参数:将Name设置为Card,选择Tablespace为PRIMARY;
  3)选择“Columns”栏,单击“New Column” 按钮插入一列,默认列名为“COL_0”;
  4)双击“COL_0”列,编辑其属性。在General栏中将Name设置为CardID,注释(Comment)为卡的ID(如图8所示);在Type栏中设置数据类型(DataType)为INT,将“Primary Key”复选框打勾将CardID设置为主键(如图9所示);
  5)采用同样的方法新建一个名为CardType的列,并设置其数据类型为NVARCHAR,长度为10;
  6)设置完毕后,单击“OK”按钮。名为Card的表格就算创建好了,如图10所示。
  Step 9:模仿Step 8提到的方法,建立Teachers表和Students表,并使用工具栏(Toolbar)中的Identifying Relationship 和Non-identifying Relationship 两个工具建立三个表之间的关系,Identifying Relationship表示主外键关系,拖动方向应该是从父表指向子表,图11中的Card表为父表,Teachers表和Students表为子表, CardID为其他两个表的主键和外键;Non-identifying Relationship则仅仅是建立外键关系。
  Identifying Relationship 工具使用方法:选中Identifying Relationship 工具,然后选择父表(Parent表),拖动连线指向子表即可。
  到此,数据库、数据库表和表关系就算建立好了。
  
  3 生成SQL Server对应的数据库
  
  3.1 具体的操作步骤
  Step 10:导入数据库。打开SQL Server的“企业管理器”,新建一个名为“SystemRose”的数据库,与Rose中的DB同名,打开属性,在“文件组”一栏上已有默认的“PRIMARY”,这里就是对应Rose中的Tablespace。
  Step 11:回到Rational Rose中,选中“SystemRose”单击右键选择“Data Modelerà Forward Engineer(生成数据库)” (如图13所示)。
  Step 12:在弹出的如图14所示对话框中,点击“Next”,选择想导入的部分(一般按默认选项即可,如图15所示),再点击“Next”,选择“Execute”复选框,输入SQL Server的登陆帐号和密码(这是在安装SQL Server时设置好的),选择刚才建立的 “SystemRose”数据库(如图16所示),选择“Next”按钮Rational Rose就会将“SystemRose”数据库导入SQL Server中对应的“SystemRose”数据库中。
  Step 13:检查SQL Server 2000,应该可以看到表都已经自动建立好了(如图18所示)。
  3.2 出错原因
  如果导入不成功,基本上是以下几个原因:
  1)在Rose中建立表的时候,没有选择相应的Tablespace;
  2)Rose中的Tablespace在SQL Server 2000中的文件组中找不到对应项。这里我们一开始就是用默认的“PRIMARY”,应该不会出错。如果用其他名称命名了Tablespace的话,只要把其改为“PRIMARY”,然后重新导入。注意重新导入之前,要先把SQL Server中SystemRose库里的表先删除,最后就可以看到一个可以使用的库了。
  
  4结束语
  
  Rational Rose是一款功能强大、应用广泛的软件,为软件设计、建模提供了一个很好的平台,上文与大家分享的仅仅是其功能的九牛一毛,还有很多功能有待我们进一步去学习、研究。文中若有不足之处,望各位读者给予指正为谢。
  
  参考文献:
  [1] 吴建,郑潮,汪杰.UML基础与Rose建模案例 [M]. 北京:人民邮电出版社, 2007.182-186.
  [2] (美)奈伯格(Naiburg,E.J.),(美)美克斯琼克(Maksimchuk,R.A.). UML数据库设计应用 [M].北京:人民邮电出版社,2002.105-120.
  [3] 徐锋,陈暄. UML面向对象建模基础 [M]. 北京:中国水利水电出版社,2006.234-241.
  [4] 牛丽平,郭新志,宋强,杨继萍. UML面向对象设计与分析[M]. 北京:清华大学出版社,2007.183-195.
  [5] 谢星星,沈懿卓. UML基础与Rose建模实用教程[M]. 北京:清华大学出版社,2008. 56-78.

作者:肖丽娟  《电脑知识与技术》2009年第05期

发表评论: