Powerdesigner设计的PDM导出的数据库中不能体现出外码约束的解决方法

探讨了在使用PowerDesigner从概念数据模型(CDM)生成物理数据模型(PDM),并导入SQL Server 2008数据库过程中,外码约束未能正确标注的问题。解析了Implementation属性设置为Trigger而非Declarative导致的外码约束缺失现象。

很多人在设计数据库的过程中,通过设计CDM  ---à 生成PDM  --à 导入数据库的方式设计和生成所需要的数据库。

但是事实上信息的人会发现,在导入数据库之后,打开SQL Server 2008中相关的表,点击打开查看相关的列,会发现,只有主码的列字段才会被标注出来(标注为PK),而本应该标注出来的外码却没有标注出来(正确的情况下应该标注为FK)。如下图:

                                                               

 

通过反转,即通过将已生成的数据库反转出PDM(具体方法不再详述),和网上一些能够在数据库中体现出外码约束的数据库PDM相比较,会发现,自己设计的PDM在导入到数据库之后不能体现数据库应有的外码约束的原因如下:

打开PDM模型,在Powerdesigner中打开 model -à References… 查看,会发现能够生成数据库中外码约束的PDM最右边Implementation属性显示为:Declarative;而不能生成外码约束的PDM的Implementation属性为:Trigger。如下图:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值