EA帮助文档翻译. .pdf
#Enterprise Architect 帮助文档EA7.0 帮助文档翻译Sapphire QQ:409116266 2009-10-26 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 43 页 -目录简介.3 从此处开始 .3 使用 EA.3 用 EA建模.3 模型管理.13 项目管理.13 编码工程.13 调试和配置文档.13 数据建模.13 一张数据表格.13 创建一个表格.13 设置表格属性.14 创建字段.19 创建 Oracle 包.21 主键.21 外键.22 存储过程.27 视图.31 索引,触发器和检查约束.33 生成 DDL.35 把一个包生成DDL.35 进程的数据类型转换.36 包的数据类型转换.37 数据库管理系统数据类型.38 从开放式数据库中导入数据库模式.39 转化 MDA.43 XML 技术 .43 生成文档.43 EA扩展.43 UML 字典.43 项目角色和EA.43 授权管理.43 术语.43 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 43 页 -简介从此处开始使用 EA 用 EA建模UML 实践-用例图、顺序图、状态图、类图、包图、协作图面向对象的问题的处理的关键是建模问题。建模可以把在复杂世界的许多重要的细节给抽象出。许多建模工具封UML(也就是 Unified Modeling Language?),这篇课程的目的是展示出UML 的精彩之处。UML 中有九种建模的图标,即:用例图类图对象图顺序图协作图状态图活动图组件图配置图为什么 UML 很重要?为了回答这个问题,我们看看建筑行业。设计师设计出房子。施工人员使用这个设计来建造房子。建筑越复杂,设计师和施工人员之间的交流就越重要。蓝图就成为了这个行业中的设计师和施工人员的必修课。写软件就好像建造建筑物一样。系统越复杂,参与编写与配置软件的人员之间的交流也就越重要。在过去十年里 UML 就成为分析师,设计师和程序员之间的“建筑蓝图”。现在它已经成为了软件行业的一部分了。UML 提供了分析师,设计师和程序员之间在软件设计时的通用语言。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 43 页 -UML 被应用到面向对象的问题的解决上。想要学习UML 必须熟悉面向对象解决问题的根本原则 都是从模型的建造开始的。一个模型model就是根本问题的抽象。域domain就是问题所处的真实世界。模型是由对象objects组成的,它们之间通过相互发送消息messages来相互作用的。记住把一个对象想象成“活着的”。对象有他们知道的事(属性attributes)和他们可以做的事(行为或操作behaviors or operations)。对象的属性的值决定了它的状态state。类 Classes是对象的“蓝图”。一个类在一个单独的实体中封装了属性(数据)和行为(方法或函数)。对象是类的实例instances。用例图用例图 Use case diagrams描述了作为一个外部的观察者的视角对系统的印象。强调这个系统是什么而不是这个系统怎么工作。用例图与情节紧紧相关的。情节scenario是指当某个人与系统进行互动时发生的情况。下面是一个医院门诊部的情节。“一个病人打电话给门诊部预约一年一次的身体检查。接待员找出在预约记录本上找出最近的没有预约过的时间,并记上那个时间的预约记录。”用例 Use case是为了完成一个工作或者达到一个目的的一系列情节的总和。角色actor是发动与这个工作有关的事件的人或者事情。角色简单的扮演着人或者对象的作用。下面的图是一个门诊部Make Appointment用例。角色是病人。角色与用例的联系是通讯联系communication association(或简称通讯 communication)角色是人状的图标,用例是一个椭圆,通讯是连接角色和用例的线。一个用例图是角色,用例,和它们之间的联系的集合。我们已经把Make Appointment作为一个含有四个角色和四个用例的图的一部分。注意一个单独的用例可以有多个角色。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 43 页 -用例图在三个领域很有作用。决定特征(需求)。当系统已经分析好并且设计成型时,新的用例产生新的需求客户通讯。使用用例图很容易表示开发者与客户之间的联系。产生测试用例。一个用例的情节可能产生这些情节的一批测试用例。类图类图 Class diagram通过显示出系统的类以及这些类之间的关系来表示系统。类图是静态的它们显示出什么可以产生影响但不会告诉你什么时候产生影响。下面是一个顾客从零售商处预定商品的模型的类图。中心的类是Order。连接它的是购买货物的Customer和 Payment。Payment有三种形式:Cash,Check,或者 Credit。订单包括 OrderDetails(line item),每个这种类都连着Item。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 43 页 -UML 类的符号是一个被划分成三块的方框:类名,属性,和操作。抽象类的名字,像 Payment是斜体的。类之间的关系是连接线。类图有三种关系。关联 association表示两种类的实例间的关系。如果一个类的实例必须要用另一个类的实例才能完成工作时就要用关联。在图中,关联用两个类之间的连线表示。聚合 aggregation当一个类属于一个容器是的一种特殊关系。聚合用一个带菱形的连线,菱形指向具有整体性质的类。在我们的图里,Order是 OrderDetails的容器。泛化 generalization一个指向以其他类作为超类的继承连线。泛化关系用一个三角形指向超类。Payment是 Cash,Check和 Credit的超类。一个关联有两个尾端。每个尾端可以有一个角色名role name来说明关联的作用。比如,一个 OrderDetail实例是一个Order实例的项目。关联上的方向性navigability箭头表示该关联传递或查询的方向。OrderDetail类可以查询他的Item,但不可以反过来查询。箭头方向同样可以告诉你哪个类拥有这个关联的实现;也就是,OrderDetail拥有Item。没有方向性的箭头的关联是双向。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 43 页 -关联尾端的数字表示该关联另一边的一个实例可以对应的数字端的实例的格数,通过这种方式表达关联的多样性 multiplicity。多样性的数字可以是一个单独的数字或者是一个数字的范围。在例子中,每个 Order只有一个 Customer,但一个 Custom er 可以有任意多个Order。下面这个表给出了最普遍的多样性示例。每个类图包括类,关联和多样性表示。方向性和角色是为了使图示得更清楚时可选的项目。包和对象图为了简单地表示出复杂的类图,可以把类组合成包packages。一个包是 UML 上有逻辑关系的元件的集合。下面这个图是是一个把类组合成包的一个商业模型。dependencies关系。如果另一个的包B 改变可能会导致一个包A 改变,则包A 依赖包 B。包是用一个在上方带有小标签的矩形表示的。包名写在标签上或者在矩形里面。点化线箭头表示依赖对象图 Object diagrams用来表示类的实例。他们在解释复杂关系的细小问题时(特别是递归关系时)很有用。这个类图示一个大学的Department可以包括其他很多的Departments。多样性意义0.10 或 1 个实例.n.m符号表示有n 到 m 个实例0.*or *没有实例格数的限制(包括没有).1只有一个实例1.*最少一个实例名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 43 页 -这个对象图示上面类图的实例。用了很多具体的例子。UML 中实例名带有下划线。只要意思清楚,类或实例名可以在对象图中被省略。每个类图的矩形对应了一个单独的实例。实例名称中所强调的UML 图表。类或实例的名称可能是省略对象图表只要图的意义仍然是明确的。顺序图类图和对象图是静态模型的视图。交互图是动态的。他们描述了对象间的交互作用。顺序图将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。消息用从一个对象的生命线到另一个对象生命线的箭头表示。箭头以时间顺序在图中从上到下排列。名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 43 页 -协作图协作图也是互动的图表。他们像序列图一样也传递相同的信息,但他们不关心什么时候消息被传递,只关心对象的角色。在序列图中,对象的角色放在上面而消息则是连接线。对象角色矩形上标有类或对象名(或者都有)。类名前面有个冒号(:)。名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 43 页 -协作图的每个消息都有一个序列号。顶层消息的数字是1。同一个等级的消息(也就是同一个调用中的消息)有同样的数字前缀,再根据他们出现的顺序增加一个后缀1,2 等等。状态图对象拥有行为和状态。对象的状态是由对象当前的行动和条件决定的。状态图statechart diagram显示出了对象可能的状态以及由状态改变而导致的转移。我们的模型例图建立了一个银行的在线登录系统。登录过程包括输入合法的密码和个人账号,再提交给系统验证信息。登录系统可以被划分为四种不重叠的状态:Getting SSN,Getting PIN,Validating,以及Rejecting。每个状态都有一套完整的转移transitions来决定状态的顺序。状态是用圆角矩形来表示的。转移则是使用带箭头的连线表示。触发转移的事件或者条件写在箭头的旁边。我们的图上有两个自转移。一个是在Getting SSN,另一个则在上Getting PIN。初始状态(黑色圆圈)是开始动作的虚拟开始。结束状态也是动作的虚拟结束。事件或条件触发动作时用(/动作)表示。当进入Validating状态时,对象并不等外部事件触发转移。取而代之,它产生一个动作。动作的结果决定了下一步的状态。活动图名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 43 页 -活动图 activity diagram是一个很特别的流程图。活动图和状态图之间是有关系的。状态图把焦点集中在过程中的对象身上,而活动图则集中在一个单独过程动作流程。活动图告诉了我们活动之间的依赖关系。对我们的例子来说,我们使用如下的过程。“通过 ATM 来取钱。”这个活动有三个类Customer,ATM和 Bank。整个过程从黑色圆圈开始到黑白的同心圆结束。活动用圆角矩形表示。活动图可以被分解成许多对象泳道swimlanes,可以决定哪些对象负责那些活动。每个活动都有一个单独的转移 transition连接这其他的活动。名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 43 页 -转移可能分支branch成两个以上的互斥的转移。保护表达式(在 中)表示转移是从一个分支中引出的。分支以及分支结束时的合并merge在图中用菱形表示。转移也可以分解fork成两个以上的并行活动。分解以及分解结束时的线程结合join在图中用粗黑线表示组件与配置图组件 component是代码模块。组件图是是类图的物理实现。配置图 Deployment diagrams则是显示软件及硬件的配置。下面的配置图说明了与房地产事务有关的软件及硬件组件的关系。物理上的硬件使用节点nodes表示。每个组件属于一个节点。组件用左上角带有两个小矩形的矩形表示。名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 43 页 -模型管理项目管理编码工程调试和配置文档数据建模一张数据表格下面展示了一个数据模型表,上面有三个表格,相互之间用主外键连接起来。上面同样展示了主外键的操作。你也可以添加其他操作:检验,触发器,约束性,索引。一个数据模型表在EA中表现为一个类表,创建方法和其他类型的表一样。创建一个表格什么是表?关系模型数据库中,最基础的模型结构就是“表”。一个表代表了具有相同结构的一系列记录。UML 数据模型配置文件中的表表现为一个衍型类,这就是说,一个带着衍型的类名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 43 页 -元素作用于它之上。一个表的图标表示在图表的右上方。创建一个表通过以下步骤创建一个表:1、选择一个表;2、选择工具条选项中的更多工具|扩展|数据模型 菜单;3、点击元素列中的表格 元素,然后点击表。一个表格就展示在表上了;4、如果类:表n 属性对话框没有显示,双击表来显示它;5、在名称 一栏,键入一个合适的名称,根据需要键入其他的属性。6、点击 OK按钮。设置表格属性一旦你创建了一个表,你可以设置它的属性。下面描述的大部分表的属性都可以在属性对话框里设置,一小部分通过键入标签值来实现,比如说,设置表所属人的值,或者,为了和 MySQL兼容,需要设置表选项。选择数据库类型最重要的是正确的为一个表设置它的数据库类型。这定义了一系列的数据类型,可以用于定义字段,也可以声明生成的是哪一种的DDL 语言。EA支持如下的数据库:DB2;Informix;Ingres;InterBase;MS Access;MySQL;Oracle 9i 和 10i;PostgreSQL;SQL Server2000和 2005;SQL Server7;Sybase Adaptive Server Anywhere(Sybase ASA);Sybase Adaptive Server Enterprise(Sybase ASE)。通过以下步骤设置数据库类型:1、双击表中的数据元素,来打开属性对话框;2、选择常规选项;3、在数据库一栏,点击下拉框,选择数据库类型;名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 43 页 -4、点击 OK按钮保存设置。点击表细节,你可以进入字段对话框和操作对话框,或者你可以选择生产这个表的DDL。设置表所属通过以下步骤来定义表的拥有人:1、选择 视图|标签值 按钮来选择或者是按键Ctrl+Shift+6。标签值对话框出现。2、在属性窗口上点击表视图上的表格。则会显示所选表格的标签值。3、点击 新标签 按钮。标签值对话框如下图所示:名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 43 页 -4、在标签值 一栏,键入标签名字拥有人。在值一栏,键入拥有人。5、点击 OK按钮来确定操作,生产的DDL脚本语言里包含表格的拥有人。设置 MySQL选项在 mySQL中,为了使用外键,你必须设置表的类型是InnoDB。通过以下步骤来设置:1、选择 视图|标签值 菜单选项或者按下Ctrl+Shift+6。显示标签值设置对话框。2、点击表中的表格,或者点击项目浏览器中的表格。标签值窗口会显示选择的表格;3、点击 新建标签 按钮。标签值对话框如下图所示:4、在标签一栏,输入标签名Type。在值一栏,输入InnoDB;5、点击 OK按钮确定操作,生成的SQL脚本中的DDL包含表格类型。6、为了兼容最新版本的MySQL,额外的表格选择可以以同样的方法添加:名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页,共 43 页 -设置 Oracle 表格属性对于 Oracle 9i 或者 10i,你可以使用表格标签值来设置表格属性。步骤如下:1、选择 视图|标签值 菜单选项或者按下Ctrl+Shift+6。显示标签值设置对话框。2、点击表中的表格,或者点击项目浏览器中的表格。标签值窗口会显示选择的表格;3、点击 新建标签 按钮。4、定义如下图所示的标签值:5、点击 OK按钮来保存标签值。所有的 Oracle 表的有效属性如下图所示。说明:索引器和约束可以用同样的方法添加。醒目索引或者约束,把属性作为标签值来添加。名师资料总结-精品资料欢迎下载-名师精心整理-第 17 页,共 43 页 -对于一个给定的表的属性可以表示在标签值的窗口里,如下面典型的标签值说明的那样:名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 43 页 -创建字段什么是字段?在一个关系表中,最基本的组织元素就是字段。每个数据的个别项目输入到一个关系数据库中,表示为一个表中的一行的一个字段。字段在UML 数据建模中表现为一个衍型的属性,这就是说,是一个有着字段衍型的属性。创建字段说明:对于MySQL,在创建一个字段之前,先添加ENUM 和 SET数据类型。选择 设置|数据库数据类型菜单,然后,在数据库数据类型对话框中,在产品名称一栏选择MySQL。添加数据类型ENUM 和 SET。通过以下步骤来创建字段:1、右击表中的表格,打开选项菜单,选择属性 菜单按钮。2、显示一个表属性对话框;名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 43 页 -3、打开之后,键入名称 和数据类型,然后点击 保存 按钮。贴士:如果数据类型的下拉列是空的,那就意味着你没有为这个表选择一个目标数据库。关闭字段对话框,从新打开表属性对话框,设置一个数据库类型,然后再继续。为了防止这种情况的发生,请设置默认数据库类型。4、下面各选项是可选的。主键;非空;唯一性;缺省值;开放性;别名;注释。说明:一些数据类型,比如说 Oracle 的 NUMBER类型,需要一个精确度和一个范围。这些在需要设置的地方就可以设置。例如,对于Oracle:说明:Oracle 的 VARCHAR2(15CHAR)和 VARCHAR2(15BYTE)数据类型可以通过添加标签LengthType 来实现,LengthType 的值设为 CHAR或者是 BYTE。说明:对于MySQL的 ENUM 和 SET数据类型,在缺省域里面,键入一个以逗号为分割的列,(one,two,three )。改变一个字段的顺序1、在字段对话框中,高亮显示一个字段的名字;2、点击可以上移或者下移字段。名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 43 页 -创建 Oracle 包通过以下步骤来创建一个Oracle 包:1、打开项目浏览器中的项目,创建一个EA包(如果需要的话,创建一个类表);2、添加一个类元素到这个包中,或者这个表中。3、打开元素的属性对话框,在衍型一栏中,设置值为包4、对于程序包规格说明,创建一个操作,这个操作的名字定义为规格说明,不设任何返回类型。5、打开规格说明操作的属性对话框,在行为制表里,在起始代码栏里输入整个包的规格说明书。6、对于包的主力,创建一个名为Body 的操作,无返回值。7、打开 Body 操作的属性对话框,在行为制表里,输入整个包的起始代码。主键什么是主键?键用来访问表,分为主键和外键。一个主键是唯一的,它定义一个表格中的一条记录。外键可以通过其他相关表格中的主键来访问数据。定义一个简单主键如果一个主键包含一个单一的字段,就比较好定义。1、右键点击表中的表格,显示选项菜单。选择元素特征|属性 菜单选项;2、在属性对话框,选择想设为主键的字段。3、选择主键复选框,然后点击保存按钮。一个衍型操作可以自动的被创建。这个操作室用来定义表的主键的。如果想去除主键标示,值删除这个操作即可。定义一个复杂的主键。通常来说,一个主键包含多于一个字段。例如,一个字段LastName 在一个表中,可能不是唯一的,所以,一个主键需要从LastName,FirstName 和 DataOfBirth 字段中定义。通过以下的步骤设置复杂的主键:1、继续设置单一主键的步骤,你选择哪个字段是没有影响的。2、右键点击表上的表格来打开选项菜单。选择选择元素特征|属性 菜单选项;3、选择主键操作(他的名字以PK_开头),然后点击字段制表;4、增加一个主键的字段,点击新建按钮,从字段名字中选择一个字段,然后点击保存按钮。5、如果需要的话,选择小手按钮可以改变主键字段的顺序。定义一个主键名字模板如下步骤可以定义一个主键模板:1、选择 工具|选项|源码工程|编码编辑器 菜单选项,选项的DDL页面显示如下:名师资料总结-精品资料欢迎下载-名师精心整理-第 21 页,共 43 页 -2、点击 DDL 名字模板按钮。DDL 名字模板对话框如下图显示:3、编辑或者是替换主键名字模板;4、点击保存按钮。SQL中没有聚集的主键通过如下步骤定义一个主键为没有聚集的主键。1、右键点击表中的表格,打开菜单选项;2、选择 元素特征|操作 子菜单,显示表操作对话框;3、高亮显示主键操作,然后选择扩展属性;4、选择 SQL Server Non Clustered Primay Key 复选框。5、选择保存关闭按钮。外键什么是外键?两种可以访问表的键:主键和外键。一个主键是唯一的,它定义一个表格中的一条记录。名师资料总结-精品资料欢迎下载-名师精心整理-第 22 页,共 43 页 -外键可以通过其他相关表格中的主键来访问数据。外键在 EA的 UML 模型中是一个衍型操作。一个外间是一个字段(属性)的集合,同时,有一些操作意义(他们加强与另一个表的主键直接的关系)。一个外键模型化为一个衍型操作;这个操作参数成为一个键中的包含的字段。说明:用定义外键的方法,通过另一个表格的主键来访问它并不是必须的。外键是一些数据库管理系统的特征,提供额外的,比如说完整参照性,来进行检查,这样可以以免一个表格的主键值存在于其他表的外键中。创建一个外键1、在表中或者是项目浏览器中打开一个需求表;2、在 EA的 UML 工具箱的类里选择一个相关的连接;3、点击原表格至目标表格,画出之间的连接;4、使用连接选项菜单来显示外键对话框;5、如果需要的话,编辑外键的缺省名称;6、高亮包含外键关系的字段;7、点击保存按钮来自动生成外键操作;你生成了外键,下面的例子显示了它在一个表中是怎样显示的:名师资料总结-精品资料欢迎下载-名师精心整理-第 23 页,共 43 页 -复合外键选择正确的字段,点击保存按钮。外键字段通过数据类型存储,并且通过数据类型来进行组合。如果需要的话,你可以通过上下两个小手的图标改变键字段的顺序。名师资料总结-精品资料欢迎下载-名师精心整理-第 24 页,共 43 页 -这个表创造了复合外键,下面这个表表现了怎样在一个表中显示。名师资料总结-精品资料欢迎下载-名师精心整理-第 25 页,共 43 页 -贴士:如果你定义一个MySQL数据库,想使用外键,你必须先设置表类型才可以。定义一个外键的名字模板1、选择 工具|选项|源码工程|代码编辑器 菜单.DDL页面如下图所示:名师资料总结-精品资料欢迎下载-名师精心整理-第 26 页,共 43 页 -2、点击 DDL名字模板。DDL名字模板对话框打开,显示了缺省状态下的名字模板。3、在 外键名字模板 一栏编辑或者替代名字模板。4、点击 保存 按钮。存储过程什么是存储过程?一个存储过程是一个SQL 语句的集合,定义一个逻辑单元来完成一个特殊的任务。存储过程用来封装一系列的操作或者在一个数据服务器上执行查询。你可以用不同的参数编译和执行存储过程,用来得到不同的结果。EA 模型在对一个类进行操作的过程中存储进程。同样,你也可以把存储过程作为一个独立的类。说明:存储过程目前支持DB2;Informix;Ingres;InterBase;MySQL;Oracle 9i 和 10i;PostgreSQL;SQL Server;Sybase Adaptive Server Anywhere(Sybase ASA);Sybase Adaptive Server Enterprise(Sybase ASE),Firebird。创造一个存储过程作为一个容器类的操作名师资料总结-精品资料欢迎下载-名师精心整理-第 27 页,共 43 页 -通过如下步骤创建存储过程:1、选择 设置|UML 菜单选项。在衍型这一制表里,显示UML 类型对话框。2、在 衍型 框里,输入 存储过程。3、在 基本类 里,输入 类。4、点击 保存 按钮,然后 关闭。5、选择一个合适的表。6、在 EA的 UML 工具箱里选择 更多工具|UML|类菜单选项。7、在元素列里点击类 元素,然后点击表。如果累属性对话框没有自动的打开,双击元素。8、在 名字 这一栏,输入类名。一般来说,这是一个数据库名字。9、在 衍型 栏,点击下拉列表,选择存储过程。10、点击 OK按钮,关闭对话框。你现在有了一个存储过程容器。11、打开类属性对话框,在数据库 栏点击下来箭头,选择模型的目标数据库。(如果已经被设置了,那么这一栏显示的是缺省的数据库)。12、在属性对话框,选择进程细节,然后点击存储过程 按钮。13、在名字这栏,输入存储过程的名字。14、在返回值栏,点击下拉箭头,选择返回类型(或者使用缺省值的结果设置)。15、在 衍型 域,确定值是proc。16、点击 保存 按钮。17、为了增加参数,在操作面板点击进程名字,然后点击编辑参数 按钮。名师资料总结-精品资料欢迎下载-名师精心整理-第 28 页,共 43 页 -18、在 名字 域,输入参数名字,在类型 域,点击下拉箭头,选择参数类型。如果参数是个长类型,就在参数类型后增加长类型。例如,从下拉列表中选择VARCHAR,就在它后面输入(5),作为它的长度。19、点击保存按钮,然后点击关闭按钮。20、点击行为制表,在起始编码这一栏,输入进程的名字。注意:如果使用上面描述的参数特征,你只需要在AS原因中增加进程的语句即可。如果你不习惯使用上面描述的特征,插入整个存储进程文本在初始代码里。在其他的情况下,初始编码里必须以create procedures 文本或者create or replacement procedures 文本开头。21、点击保存按钮,点击关闭按钮。创建一个独立的存储进程1、选择 设置|UML 菜单按钮。显示UML 类型对话框名师资料总结-精品资料欢迎下载-名师精心整理-第 29 页,共 43 页 -2、在 衍型 里,输入 进程。3、在 基本类 里,输入 类。4、点击 保存 按钮,然后点击 关闭 按钮。5、选择一个合适的表。6、在 EA的 UML 工具箱里选择 更多工具|UML|类菜单按钮。7、点击元素列表的类元素,点击表,如果类属性对话框没有出现,双击类元素。8、在名字域,输入一个进程的名字。9、在衍型里,点击下拉框,选择进程。10、点击 OK按钮关闭对话框。新的进程元素如下所示:11、双击进程元素,对话框如下所示:名师资料总结-精品资料欢迎下载-名师精心整理-第 30 页,共 43 页 -12、在进程限定域,输入整个进程文本。13、点击保存按钮,然后关闭。视图说明:视图当前支持DB2;Informix;Firebird;Ingres;InterBase;MySQL;Oracle 9i 和10i;PostgreSQL;SQL Server;Sybase Adaptive Server Anywhere(Sybase ASA);Sybase Adaptive Server Enterprise(Sybase ASE)。创建一个数据库视图:1、选择 设置|UML 菜单。在衍型制表中,显示UML 类型对话框。名师资料总结-精品资料欢迎下载-名师精心整理-第 31 页,共 43 页 -2、增加一个如上图所示的视图 衍型,在 基础类 中选择 类,选择一个合适的表。3、打开 EA的 UML 工具箱中打开这个类 组。4、点击 类元素,然后点击表。5、在类属性对话框,衍型 的下拉框中选择视图。6、输入一个视图的名字。7、点击 OK 按钮关闭对话框。你现在有了一个数据库视图。8、打开属性对话框,从数据库 下拉菜单中,选择目标的数据库操作系统。缺省的数据库中显示了以前的默认设置。创建一个视图1、从视图类到一个或者多个所依赖的表格中,创建依赖关系。2、在视图属性对话框中,选择视图细节制表,选择视图定义 按钮。3、在视图定义栏里,输入全部的视图定义。4、点击 保存 按钮来保存你的定义。下面展示一个例子:名师资料总结-精品资料欢迎下载-名师精心整理-第 32 页,共 43 页 -索引,触发器和检查约束什么是索引?索引是可以作用的于表的表现形式。在一个表必须以一定的顺序分类的时候会用到索引。它在维护某种分类的时候,只需要很小的工作,而不是每需要一次,就分类一次。在EA中,一个索引作为一个衍型操作被建立。在生产DDL 的时候,生产索引的指令就写进了DDL 的输出中。什么是触发器?触发器是一个自动的操作,是修改数据库中的数据时自动发生的,是为了确保数据库中的约束行为。例如,一个触发器可能被用来定义有效性,每当一个数值被修改,它就必须运行一次。或者是当一个主表的记录被删除的时候,它就自动的进行附表的删除工作。在EA中,一个触发器作为一个衍型操作来定义。当前EA不在 DDL中生成触发器,但是,他们可以辅助描述表结构的细节。什么是检查约束?一个检查约束通过限制一个字段的取值加强了域的完整性。创建一个指针或者是触发器1、在表或者项目管理器中,打开需要定义的表格。2、使用菜单选项打开操作对话框。3、增加一个操作(比如 IDX_客户名或者是TRG_客户更新;IDX_和 TRG_ 前缀是可名师资料总结-精品资料欢迎下载-名师精心整理-第 33 页,共 43 页 -以的,但是它可以帮助定义操作)。4、在操作的 衍型 中合理的设置 指针 或者 触发器(支持 check,proc和 unique)5、点击行为制表。6、在初始代码 中,输入触发器或者进程的整体,或者是检查约束的细节。7、选择操作,点击字段制表8、以一定的顺序增加需要的字段,并且保存设置。创建一个检查约束1、在表或者项目管理器中,打开需要定义的表格。2、使用菜单选项打开操作对话框。3、增加一个操作(比如CHK_ 字段名称)。4、选择 衍型 中的约束 检查,点击 保存 按钮来保存设置。5、在行为制表中选择约束操作。6、在初始代码中输入整个约束从句(如 col11000),然后点击 保存 按钮保存设置。下图是一个索引的示例:名师资料总结-精品资料欢迎下载-名师精心整理-第 34 页,共 43 页 -生成 DDL EA可以生成简单的DDL 脚本来创建你的模型中的表格。1、在表中,右键点击你所要生成的表格。显示菜单选项。2、选择 生成 DDL按钮,显示生成DDL 对话框。3、在路径 里,悬着你想要存放结果文件的路径。4、为了在脚本里包含一个删除表的命令,你要选择创建删除SQL的复选框。5、点击 生成 按钮,生成DDL。6、点击 视图 按钮,你可以查看输出(你必须先在本地设置对话框里配置一个DDL查看器)。把一个包生成DDL 通过如下步骤,把一个包生成DDL。1、在项目浏览器中,右键点击所需要的包,出现菜单选项。2、选择 编码工程|生成 DDL 菜单选项。名师资料总结-精品资料欢迎下载-名师精心整理-第 35 页,共 43 页 -说明:你也可以选择项目|数据库|工程|生成 DDL包。3、为了递归的生成DDL,选择 包含所有的子包复选框。4、点击 生成 按钮,EA生成和进程执行统一的文件名。进程的数据类型转换一旦一个数据模式被重新在EA里设置(无论是通过ODBC也好,通过手工设置也好),DBMS 可以相应的改变成另外的类型和字段数据类型。把 DBMS 类型的表格转换成另外的类型,可以通过如下步骤完成:1、双击表格元素,打开表属性对话框。2、数据库 域显示了这个表格当前的DBMS。3、为了把字段数据类型转换成其他的类型,在数据库 下拉列表中选择目标数据库,然后点击 应用。4、数据类型转化成新的DBMS,他们反映了这个表的所有的DDL。名师资料总结-精品资料欢迎下载-名师精心整理-第 36 页,共 43 页 -包的数据类型转换DBMS 包程序或者映射是你可以把一个包中的包转换成另外一种DBMS 进程,也可以提供改变拥有关系的能力。1、在项目管理器中,右键点击项目浏览器中的包,显示菜单选项。2、选择 编码工程|重置 DBMS 选项菜单选项。DBMS 选项管理对话框显示。3、在当前的DBMS域里,点击下拉箭头,选择当前的DBMS。在新的 DBMS域里,点击下拉箭头,选择目标DBMS。4、选择 转换 DBMS类型 复选框。5、如果有子包需要变换,选择Process Child Package 复选框6、点击 OK按钮,所有包中的表都映射到了新的DBMS上。通过以下的步骤改变表格的拥有人。1、右键点击项目浏览器窗口的包,显示菜单选项。2、选择 编码工程|重置DBMS选项 菜单按钮,出现DBMS 管理选项对话框。3、在新的所属 一栏,输入新表格的拥有者。4、在当前的拥有者一栏,点击下拉箭头,选择当前的拥有者,或者选择 来改变表格的拥有人。5、选择 改变表格拥有者的复选框。6、如果子包同样需要改变,选择Process Child Package 复选框。7、点击 OK 按钮。所有表格的拥有人将改变到当前的拥有人上。对于更多关于设这表格拥有人的细节,请参考设置表格拥有者小节。怎样展示当前表的名师资料总结-精品资料欢迎下载-名师精心整理-第 37 页,共 43 页 -表格拥有者,请参考设置表现选项一节。数据库管理系统数据类型当设置你的数据模型文件的时候,你可以使用数据库数据类型页面来自定义一个特殊的DBMS 数据类型。在这个页面中,你可以添加,配置自定义的数据类型。对于一些数据类型,你必须添加大小、精确度和最大值。选择 设置|数据库数据类型菜单按钮,可以访问数据库数据类型页面。你同样可以添加一个 DBMS 产品和配置嵌入的数据类型。你可以按照以下步骤,在产品间映射数据库数据类型的大小。1、在数据库数据类型对话框中,点击 数据类型映射按钮。打开数据库数据类型映射对话框。名师资料总结-精品资料欢迎下载-名师精心整理-第 38 页,共 43 页 -2、在原始产品名称中,点击下拉箭头,选择原始DBMS 产品类型。定义数据库的数据类型面板,定义所有的已定义的数据类型,大小和值。3、点击数据类型,映射。在原始产品名称下的 数据类型 和通用类型 一栏显示数据类型。4、在目标产品名称一栏,点击下拉箭头,选择目标 DBMS 产品类型。在这个选项下慢的 数据类型 和通用类型 一栏显示相对应的值。5、在大小面板,点击单选按钮选择正确的大小单元,在相对应的地方输入缺省值。6、点击 保存 按钮保存映射。7、重复步骤3-6 来进一步的设置数据类型。8、当你完成了映射数据类型,点击关闭按钮,回到了数据库数据类型对话框。从开放式数据库中导入数据库模式EA支持 ODBC数据源导入数据库表格。表格作为带有合适数据定义的衍型类导入。导入数据库表格和存储过程通过下面的步骤导入:1、选择逻辑视图中的任意包。2、导入:只导入包,右键点击包,显示选项菜单,选择编码工程|导入 ODBC的数据库模式 菜单按钮。一个表,右键点击包中的表,打开选项菜单,选择导入 ODBC的数据库模式 菜单选项。名师资料总结-精品资料欢迎下载-名师精心整理-第 39 页,共 43 页 -说明:你可以选择项目|数据库工程|导入 ODBC的数据库模式菜单。打开的对话框如下图所示:3、在数据库名字 一栏,点击下拉箭头,选择一个ODBC的数据源。4、当同步存在类的时候,选择合适的复选框来决定,这个模型的注释,缺省值或者是约束是否同步。5、选择 包含用户存储过程复选框同样可以导入存储过程。选择包含用户视图复选框可以导入用户视图。说明:只可以导入一个表到一个包。如果一个其他包的表是打开的,会打开一个对话框来提示你是继续还是取消导入。ODBC数据源导入数据库模式对话框包含复选框选项,你可以选择导入包和表,或者是只导入包。如果没有表是打开的,只选择包在缺省状态下市选择的,也是不可更改的。如果选中的包中的表是打开的,你可以任意选择其中的选项。6、点击 导入 按钮来开始导入。名师资料总结-精品资料欢迎下载-名师精心整理-