工具向导:使用 Rational XDE Developer 设计数据库
此工具向导描述如何使用 Rational XDE Develope Data Modeler 构建数据模型。
工具:Rational XDE Developer
关系
相关元素
主要描述

概述

此工具向导描述如何使用 Data Modeler 构建数据模型

Rational XDE (TM) 软件工具包含的功能可使应用程序设计员和数据库设计员使用同一个工具来开发应用程序和数据库。作为数据库设计员(或简称设计员)您可以使用 XDE 对数据库进行建模和设计,以及集成自己的应用程序和数据库。XDE Data Modeler 将针对数据库建模的统一建模语言(UML)概要文件用作标准表示法来构造数据模型。以下 XDE 联机帮助主题针对与使用 Rational XDE 进行数据库建模和开发有关的具体细节提供关键背景信息:

  • 帮助手册图标 Databases Supported in Rational XDE :列出了 Rational XDE 中支持的数据库。
  • 帮助手册图标Supported OLE DB Providers and JDBC Drivers :列出了 Rational XDE 中支持的数据访问提供程序和驱动程序。
  • 帮助手册图标Setting Options for Data Models :总结了对缺省数据库指定和数据库目标的设置。
  • 帮助手册图标Setting the Default Database Assignment :提供有关如何将 XDE 数据模型配置为指向特殊命名的数据库的指导信息。
  • 帮助手册图标UML Data Modeling Profile :总结了数据模型中使用的统一建模语言(UML)建模元素。
  • 帮助手册图标Data Modeling Visibility Icons :列出了一些概念元素,它们用于定义特定于数据模型的主键/外键和数据库触发器。

在 XDE 中可以使用三种方法创建数据模型

  • 使用 Data Modeler 工具在 XDE 中直接构建数据模型。
  • 转换设计模型中的持久类,以在数据模型中创建表。
  • 对现有数据库模式或 DDL 脚本进行反向设计以创建数据模型。 

有关创建数据模型的不同方法的更多信息,请参阅以下 XDE 帮助主题:

  • 帮助手册图标Designing Data Models
  • 帮助手册图标Class to Table Transformation
  • 帮助手册图标Building Data Models by Reverse Engineering

此工具向导的其余部分提供了有关如何通过转换设计模型中的持久类来进行开发以构造数据模型的指示信息。XDE 模型构造指南中的“数据模型”部分更详细地描述了此处讨论的数据模型程序包结构。

工具向导:使用 Rational XDE 对数据库进行反向设计中提供了有关如何通过对物理数据库设计进行反向设计来创建数据模型的更多信息。

开发逻辑数据模型 <可选>

有些项目可能需要创建数据库设计的理想“逻辑”模型,用于捕获与应用程序无关的视图,该视图包含关键的逻辑数据实体及其关系。可将此逻辑数据模型视为“分析”类型的模型,类似于应用程序设计的开发中可能使用的可选工作产品:分析模型。请注意,逻辑数据模型包含在工作产品:数据模型中,不能将其视为单独的 RUP 工作产品。  

可以使用 XDE Data Modeler 工具直接创建逻辑数据模型。请参阅 XDE 模型构造指南获取有关在整个数据模型工作产品内创建逻辑数据模型的信息。参考:帮助手册图标Logical Data Models

开发物理数据库设计

可优化逻辑数据模型以使用 Rational XDE 创建物理数据库设计的详细模型。
(请参阅 帮助手册图标Physical Data Models 。)随后可对这个详细的物理数据模型进行正向设计来创建数据库。(请参阅工具向导:在 Rational XDE 中对数据库进行正向设计。)下文描述开发物理数据模型的主要步骤。

定义域

创建域以实施可在整个数据模型中使用的用户定义的数据类型,以实施数据库设计标准。(请参阅 帮助手册图标Domains 。)域也可用于在列中嵌入业务规则。 

要在数据模型中使用域定义的数据类型,必须遵循以下指导信息:

  • 域应在数据模型内单独的程序包中定义。对于大型团队,通常允许使用单独的 XDE 模型。(请参阅帮助手册图标Creating Domains 。)
  • 必须将包含这些域的程序包分配给实现数据库中的表的数据库组件。(请参阅帮助手册图标Assigning Domain Packages to Databases 。)

有关如何在数据模型中将域应用于列的信息,请参阅 帮助手册图标Assigning Domains to Columns 。 

创建初始物理数据库设计元素

将设计模型中的持久类转换为设计模型中的表。(请参阅 帮助手册图标Class to Table Transformation 。)这些类的属性将变为表中的列。Rational XDE 提供了将类的属性定义为候选键的选项。 (请参阅 帮助手册图标Assigning Candidate Keys 。)Rational XDE 还将类之间的特定关联转换为表之间的关系。以下 Rational XDE 联机帮助主题提供了有关如何将类转换为表的更多信息:

  • 常规的映射信息 - 帮助手册图标Class to Table Transformation Mapping
  • 特定于 DBMS 的映射信息 - 帮助手册图标Class to Table Transformation Data Type Mapping

定义引用表

根据需求创建引用表来管理数据库中所有的静态数据项。可以使用 XDE Data Modeler 功能直接在数据模型中创建引用表。 参考:帮助手册图标Modeling Tables and Columns

创建主键和唯一键的约束

定义主键约束和唯一键约束来识别表中的信息行。请参阅联机帮助主题 帮助手册图标Primary Key Constraints联机帮助主题  帮助手册图标Creating Primary Key Constraints 描述了用于在表的一个或多个列上创建主键约束的步骤。帮助手册图标Unique Key Constraints 中包含了有关定义唯一键约束的信息。 在模型中创建唯一键约束的步骤:帮助手册图标Creating Unique Key Constraints

请参阅 Rational XDE 联机帮助:帮助手册图标Creating Constraints

定义数据和引用完整性实施规则

可使用检查约束来控制对表中的数据元素的更新。Rational XDE 提供了为表、列和域定义检查约束的功能。 请参阅主题 帮助手册图标Check Constraints以下 XDE 联机帮助主题描述了如何在数据模型中创建三种类型的检查约束:

  • 列检查约束 - 帮助手册图标Creating Column Check Constraints
  • 表检查约束 - 帮助手册图标Creating Table Check Constraints
  • 域检查约束 - 帮助手册图标Creating Domain Check Constraints

用于确保引用完整性的另一种类型的约束为外键约束。(请参阅帮助手册图标外键 。)只能通过创建表之间的关系生成外键约束。 (请参阅 帮助手册图标Creating Foreign Key Constraints 。)这种情形的例外情况是将数据库或 DDL 脚本反向设计为数据模型的过程,在这种情况下,关系及外键是自动生成的。键的迁移取决于两个表之间添加的确定与非确定的关系类型。

参考:帮助手册图标Key Migration 参考:帮助手册图标Changing the Migrated Key

对数据库设计进行反向规范化来优化性能

根据特定的项目情况,可能需要调整规范化的物理数据库设计以满足性能需求。请通过将表设计为将一起检索到的对象存储在同一个表中,来为提高性能优化数据模型。这种技术称为反向规范化。要进行反向规范化,请将两个表中的唯一列合为一个,并除去第二个表。 

优化数据访问

另一优化技巧是使用列索引来更有效地访问表中的数据。请参阅 帮助手册图标Indexes如何在数据模型中创建索引的描述:帮助手册图标Creating Indexes

数据访问的另一方面为使用数据库视图。视图可用于控制或限制对一个或多个表中的数据的访问。请参阅帮助手册图标Creating Views 以获取如何在“数据模型”中创建视图的描述。参考:帮助手册图标Modeling Views

定义存储特征

请通过定义表空间和表空间容器来为数据库创建模型存储设计。(请参阅帮助手册图标表空间 。)通过实现关系将物理数据库设计元素映射到存储元素。XDE 联机帮助主题 帮助手册图标Adding Tablespaces to Databases 描述了如何为特定数据库创建表空间。XDE 联机帮助主题 帮助手册图标Assigning Tables to Tablespaces 描述了如何将模型中的表分配给表空间。

Rational XDE 目前支持为 Oracle、DB2 和 SQL Server 的表空间建模。以下 XDE 联机帮助主题提供了有关如何为这些 DBMS 产品的表空间建模的指导信息: 

  • 帮助手册图标Modeling Oracle Tablespaces
  • 帮助手册图标Modeling DB2 Tablespaces
  • 帮助手册图标Modeling SQL Server Tablespaces

请参阅 Rational XDE 联机帮助中的以下主题,获取有关表空间和数据库模型元素的更多信息:

  • 帮助手册图标Modeling Databases and Tablespaces
  • 帮助手册图标Databases

设计存储过程以向数据库分发类行为

根据需要定义存储过程来支持数据库信息的有效存储和检索。请检查曾用于为候选存储过程创建表的设计类的操作。可将存储过程作为过程或函数实施。请参阅 帮助手册图标Stored Procedures正如 帮助手册图标Stored Procedure Containers 中所述,存储过程必须位于“存储过程容器”中。存储过程是作为其所在的“存储过程容器”类的操作而创建的。请参阅 帮助手册图标Creating Stored Procedures , helpbook iconCreating Stored Procedure Containers , helpbook iconCreating Stored Procedure Parameters

请参阅 Rational XDE 联机帮助主题:帮助手册图标Modeling Stored Procedures

按照需要定义触发器以进一步控制和管理对表中信息的修改。参考:主题 帮助手册图标Modeling Triggers

查看结果

查看数据模型中数据库设计的结果,以与设计模型中的应用程序设计保持一致,并与整体应用程序体系结构保持一致。 请参阅核对表:数据模型,了解要复审的特定项。