`

PowerDesigner中生成外键FK技巧

 
阅读更多

昨天,使用PD来设计数据,从CDM->PDM->DB时,发现在CDM中建立的FK关联,居然在数据库中不能生成FK,本来想自己去DB中添加FK的,后来,想想还是去找找原因吧,反正有时间,,,十一假期吗?哈哈,我是宅程。。。

  在网站找了下,也没有找到具体的文章,后来自己就开始想办法了,办法是这样的,先在DB中建个库,再建两表,加上PK+FK,反向工程至PD,这个不用我说了吧?简单,,,

  最后去比较两个PDM中Referenses下的FK(就叫FK吧?)

非反向工程Referenses下的FK属性图

反向工程Referenses下的FK属性图

看到那里不一样了吗?在Implementation选择中一个是Trigger,一个是Declarative,现在找到了,那我把这里的改过来就可以了,心里这样想,注意下面的列表选项了,一开始,我只是变更Trigger怎么变都没有用,后来发现下面的这也不一样,要一起改了OK,再生成时DB中FK就有了,搞定,,,呵呵,后来一想不对呀,这时原PDM中从CDM中来的,再用CDM生成PDM时,上面属性,还是Trigger,要是再PDM中再手动改一边,FK不多还好,要是很多怎么办呀,于是,一切还得从源开始,去BAIDU吧,最近有些烦它,算了还是去SOSO,于是有搜到一篇讲的也是改动PDM来实现,还是自己去找吧?

后来回到CDM,在TOOLS-》Generate Physical Data Model 找开生成对话框,发现如下图



图1:



图2:



在图2中这样设置就可以了,当然也要注意其下面的在Default constraints下的两个选择



至此完成配置。你可以重新CDM->PDM->DB看看是不OK了,,,

http://kaminlee.iteye.com/blog/1047996

分享到:
评论

相关推荐

    PowerDesigner中的CDM设计的外键作主键的问题

    在PowerDesigner中,我们可以使用VBS脚本来实现各种自定义功能,例如修改生成的SQL脚本、添加注释、修改外键命名规则等。下面我们将详细介绍如何使用VBS脚本来实现这些自定义功能。 首先,我们可以使用VBS脚本来...

    powerdesigner导入excel生成表结构

    根据给定的文件信息,我们可以总结出以下关于如何利用PowerDesigner通过Excel文件生成数据库表结构的知识点: ### PowerDesigner 导入 Excel 生成表结构 #### 功能简介 PowerDesigner 是一款强大的数据建模工具,...

    PowerDesigner使用技巧

    在 PowerDesigner 中,外键命名规则可以通过 Database->Edit Current DBMS->Scripts->Objects->Reference->ConstName 来设置。默认的命名规则是 'FK_'+8 位子表名+9 位 Reference 名+8 位父表名,但是可以根据需要...

    PowerDesigner一些使用技巧

    在 PowerDesigner 中添加外键的具体步骤如下: 1. **打开模型视图**:选择 `Model` → `References` 新建一条外键。 2. **编辑外键属性**:双击新建的外键进入属性编辑页面,在 `Joins` 卡片中可以选择子表的外键...

    PowerDesigner 12使用心得

    六、生成外键 在 PowerDesigner 中,用户可以通过 PDM Generation Options -> Detail -> FK index names 来设置外键的命名规则。用户可以将默认的 %REFR%_FK 改为 FK_%REFRCODE%,其中 %REFRCODE% 指的是 CDM 中 ...

    PowerDesigner常见问题.doc

    当从概念数据模型 (CDM) 生成物理数据模型 (PDM) 时,PowerDesigner 会自动生成外键名称。默认情况下,外键名称的模板是 `%REFR%_FK`,这可以通过以下步骤进行自定义: 1. **进入** `PDM Generation Options -> ...

    PowerDesigner一些小技巧

    以下是一些关于PowerDesigner的小技巧: 1. **字段长度限制问题**: 当在Oracle数据库上生成建表脚本时,若字段长度超过15个字符,会遇到错误。这是因为Oracle默认的限制。解决方法是进入PDM的Database菜单,选择...

    PowerDesigner使用

    在使用PowerDesigner生成Oracle数据库建表脚本时,可能会遇到字段名长度超过15字符导致的错误。这一问题的根源尚不清楚,但有几种可行的解决方案: - 打开PowerDesigner的Database菜单,进入`Edit CurrentDBMS > ...

    PowerDesigner 设置

    PDM Generation Options->Detail->FK index names 默认是%REFR%_FK,改为 FK_%REFRCODE%,其中%REFRCODE%指的就是 CDM 中Relationship 的 code! 这样,我们就可以解决由 CDM 生成 PDM 时,自动生成的外键的重命名...

    使用power igner设计数据库的20条技巧

    ### 技巧3:PowerDesigner生成SQL语句时不使用Domain 使用Domain可以提高代码的一致性和可读性,但在某些情况下,特别是生成针对SQL Server的数据库SQL脚本时,可能会更倾向于使用SQL Server原生的数据类型而非通过...

    Powerdesigner使用建议(完整版) 用实体关系图进行数据库建模

    例如,默认的外键索引名称模板`%REFR%_FK`可以根据CDM中的关系代码动态生成,而列名模板`%.3:PARENT%_%COLUMN%`则根据父表和列名自动生成。 #### 5. **模型完整性检查与优化** PowerDesigner内置的模型完整性检查...

    PowerDesigner操作手册

    6. **自定义外键命名规则**:在“PDM Generation Options”中,可以定制外键索引(FK index names)和父字段(FK column name template)的命名规则,如改为FK_%REFRCODE%和Par%COLUMN%。 7. **一对一关系的外键...

    (完整word版)应用PowerDesigner软件设计数据库表.doc

    10. **编辑外键属性**:双击生成的外键(如"FK_Orders_Reference_Users"),在"Name"中可以重命名外键,然后在"Joins"选项中设置关联的字段。 11. **建立其他关联**:按照第11步的方法,为"orders"与"orders_detail...

    应用PowerDesigner软件设计数据库表.docx

    通过PowerDesigner,我们可以方便地设计复杂的数据库结构,包括表的创建、字段定义以及表间的关联关系,生成的SQL脚本可以直接在数据库管理系统中执行,实现数据库的创建。这对于数据库规划、开发和维护具有很高的...

    PowerDesinger使用小技巧定义.pdf

    以上就是PowerDesigner使用中的一些关键技巧,这些技巧可以帮助你更高效地管理和维护你的数据库模型,同时避免常见的问题。在日常工作中,不断探索和积累这样的小技巧,将极大提升你的工作效率。

    数据库建模图.

    数据库建模图是数据库设计的重要步骤,用于在实际创建数据库之前可视化数据结构和关系。...PowerDesigner生成的模型提供了清晰的视图,帮助设计者和开发者理解数据如何存储和交互,从而能够更好地构建和维护信息系统。

    PowerDesign高级应用

    - **解释:** 上述命名规则会生成如`FK_TABLE_2_RELATIONS_TABLE_1`这样的外键名称。 #### 4. 其他技巧 - **去掉SQL脚本中的表头注释:** 在`Databse -> Generate Database (Ctrl+G)`窗口中,选择`Options`卡片,...

    面向中小型企业的交互式CAPP系统的设计与实现_4.pdf

    例如,“FK_CARDTABL_REFERENCE_TEMPLATE”表示CardTable实体引用Template实体,“FK_TABLEHEA_REFERENCE_CARDTABL”表示TableHeader实体引用CardTable实体等。这种关系的定义确保了数据的一致性和完整性,使数据在...

    oracle清空所有表数据

    这可以通过SQL脚本完成,或者使用设计工具如PowerDesigner生成相应的DDL语句。在示例中,`alter table Da_pic add constraint FK_DA_PIC_REFERENCE_DA_PICSU foreign key (subjiectid) references Da_picsubject (ID...

    实验一数据库设计扫描.pdf

    例如,`FK_教授课程_RELATIONS_学生`是教授课程表与学生表之间的外键约束,这段代码会检查是否存在这个约束,如果存在则删除。接着,它会检查并删除与教师表相关的外键约束,最后,如果相应的表(如学生、教师、教授...

Global site tag (gtag.js) - Google Analytics