PowerDesigner错误处理
最近用PowerDesiner来建立让我有点烦的数据库,建立过程还算比较安稳,只是在我生成数据库文件的时候,觉得自己头要炸了。
在CDM里建模型的时候,如果两个表里使用同名的字段做主键,根本不行,直接报错
错误如图:
一遍红色过,百度了下这个错误意思,好像因为我约束名唯一性的问题。
双击一下错误,发现外键引用的名字有重复的:
没办法,我只能手动更改Constraint name,虽然可以解决问题,可是这么多总不能一个一个的更改吧。
于是上网百度一下,发现除了手动更改之外还一个方法。
使用Automatic Correction 来自动更改错误,
右键错误行,菜单中选择Automatic Correction,自动更正错误。
这样Constraint name 就会自动编号处理。
但是使用Automatic Correction来更改也比较的麻烦。
在网上找到一个贴子,说可以通过修改外键命名规则来解决这个麻烦。
方法如下:
选择Database—>Edit Current DBMS
选择Scripts->Objects->Reference->ConstName
可以发现右侧的Value为:
可见,该命名方法是:‘FK_’+8位子表名+9位Reference名+8位父表名,你可以根据这中模式自定义为:
可以使FK名称变为FK_TABLE_2_RELATIONS_TABLE_1
掌握这种方法后就可以按照自己的想法修改了
总结:
建模时还是要认真一点,不然可能把表给连错了,也有可能没有放主键。