使用erwin

来源:互联网 发布:淘宝店铺推广策划 编辑:程序博客网 时间:2024/05/16 07:06

找到erwin的一些解决办法和使用总结,转载以作收藏。

ERwin v4.1.4安装之后无法使用,把系统日期往前调,不知道多前可以,但是我保持在2000年了。


ERWIN使用总结

   1)Forward Engineer
       正向工程,可以在ERwin的Diagram区中绘制Physical Modal图,然后点击Forward Engineer来生成数据库中相应的表。在生成表之前,必须在服务器中先创建相应的数据库,比如DB_Alteration.
       在使用Forward Engineer的过程中发现有一些bug,所以使用Forward Engineer时最好谨慎些;以下是一些注意事项:
       1. 只创建相应的Table、Column及Column的DataType、设置主键、是否为NULL、索引、标识(种子)。
       2. 对于外键及Table之间的关系,不要在Diagram区中绘制,可以在DBMS(例如SQL Server)中进行设置。
       3. 对于Column的默认值,不要在Diagram区中绘制,可以在DBMS(例如SQL Server)中进行设置;第2、3项在DBMS设置完成之后,再通过Reverse Engineer导入到Physical Modal图中。
       4. 对于Column,可以填写对应的描述(Comment),但是Forward Engineer不会生成到对应的数据库中;不过这也是好处,我们其实并不需要把Column的描述写进数据库,只是为了方便生成文档而已嘛。^_^
       5. 为了操作方便,可以个人先创建Model的Template,设置Default Fonts&Colors,点击保存;并且设置Model Property(在[Model]-[Model Property]),设置Default Null Option,Default DataType等。
       绘制的Physical Modal图如下图所示:

   2)Reverse Engineer
       反向工程,操作比较顺利;直接将数据库的表结构设计导出成Physical Modal图。
       方向工程生成的Physical Modal图,因为Forward Engineer功能对表的Relationship设置不是很好用,最好是在DBMS中设置,然后再由Reverse Engineer功能生成Physical Modal图。如下图所示:

   3)Complete Compare
       将数据库的表结构设计和Physical Modal图进行比较和同步,注意对选项进行设置,不需要的选项要去掉,以免同步的时候耗费资源,出现"无法响应"的情况。
       在点击Complete Compare命令之后,会弹出一个对话框,设置同步的选项。
       第一步必须设置Sync Action,如果只是通过Physical Modal来更新数据库,则选择"Update Other"项,如下图所示:
       第二步设置比较项,将不需要比较的项去掉;如下图所示:

   4)Report Builder
       生成报告文档,使用比较方便,如果是文档中包含有中文,可能会出现乱码现象,必须在设置首选项:打开一个模板,点击[编辑]-〉[首选项],然后设置默认的字体(例如宋体)就可以了。在生成报告文档之前最好个人先新建并定制一个模板。

   5)DB Synchronize
       跟Complete Compare命令一样,只是在点击选择Physical Modal图某个Table时,可以针对数据库中的一个表进行同步。

   6)Select Target Server
       进行不同类型数据库之间的迁移,没试过。




对 ERwin 初学者使用

1、如果只做文档,可以选择只建立 logical view

2、如果是做项目,需要同时使用 Logical view 和 physical view

3、一般 Logical view 是用于做文档的,而 physical view 是用于生成或者导出脚本的

4、表之间的三种连接线, 第一种用于把表 1 中的主键插入到表 2 中的外键,且插入的作为表 2 的主键 第二种用于多对多,很少用到 第一种用于把表 1 中的主键插入到表 2 中的外键,且插入的不作为表 2 的主键

5、Logical 中的和 physical 中对应的表的名称可以不一样,一般在 physical 中的表的 名称用英文名称 在 Logical 中的表的名称则无所谓,如果需要可以用中文

6、在 Physical view 中的 Tools 中的[Forward Engineer/Schema Generation]中 在右侧的表中用对勾可以选择需要操作的项目 点击【preview】可以看到脚本,可以复制过来改改就能是脚本了 点击【report】可以直接导出脚本 点击【Generate】则可以直接连接到数据库,把相关的 Scheme 都建立起来

7、 Logical view 的一个 Entity 上右键点击, 在 选择 attributes, 就进入了给表加入 column 的界面了 在 General 中选择一种基本类型(Domain)比如 string 后,就能加入一个名称了,Attribute name 就是 Logical view 中的名字 Column name 就是用于生成脚本的名称。在 General 中的 Primary Key 的 checkbox 就是 选为主键的地方了。 在 DataType 中就能设定具体的数据类型,比如 VARCHAR2,NUMBER 等。

8、关于索引和约束的建立 右键在 Entity 上,选择 Key Group 就能新建约束了

9、在 Attribute 中选择 Datatype 就能在 Validate 中选择这个 column 相关的约束,在 Default 中选择这个 column 的默认值了

9、在Attribute中选择Datatype就能在Validate中选择这个column相关的约束,在Default中选择这个column的默许值了

10、关于Domains的概念
Domain的概念在Sql server中是撑持的,可以在脚本的最起头就界说一堆的Domain,然后在厥后的脚本中都援用相关的域名,而不消直接原始的数据类型了。for example:
在一个项目标数据库设计中卡号用得极度的多:
所以在ERwin中Logical view中选择Domain,然后右键点击?<unkonwn>,new,就能建立一种新的Domain在叫做Cardseries。选择property可以给他选择相关的属性,比如选择Datatype为VARCHAR(18),还可以给它选择约束等等。这个新建的Domain就能在这个项目中利便的使用了。

11、关于Subject Area的概念
当全部项目设计表比力多的时辰,很难在一个view中毗连清晰所有的表的之间的关系,如许就需要在SubjectArea平分多个Area,把相关的表放到相干的的Area中去毗邻关系,这样对照便利设计。
1>右键点在一个响应的Area上,然后go to ,就能看到阿谁Area相应的View
2>右键->property,就能设置当前Area中需要哪些表,此中比较有效的一组按钮是最后一组(两个),能把选中的要加入Area的表的相关的M级Ancester和N级Descendant同时到场Area,至于M和N可以本身选择,很是轻易。注重:在任何非主Area中新建的Entity城市在<MainSubject Area>中有一份,删除也是同时进行的。




0 0
原创粉丝点击