Sybase Powerdesigner - 如何自动格式化PK和FK的命名?
运行脚本以格式化主键和外键
PK_TABLENAME
FK_PARENT_CHILD
示例
PK_Post
FK_Post_Comment
答案 0 :(得分:0)
以下解决方案很复杂,但也非常灵活/不那么具有侵入性。这将帮助您入门:
在PD模型中,为表或列(或引用)元类对象创建一个新的“使用Autofix选项进行自定义检查”。 (无论您选择哪种。您可以使用嵌套的foreach循环(对于每个表... /每列...)在您的vbscript代码中迭代子对象,如下所示:
单击菜单项模型/扩展模型定义。 点击蓝白色> ===图标。
为您的新“扩展模型定义”命名,例如mysql55定制-001。
可选:单击“导出扩展模型”定义,将其导出为mysql55-custom-001.xem。
单击新扩展模型定义名称旁边的箭头,将其保存到默认子目录。
这是扩展模型对话框:
右键单击“配置文件”,单击“添加元类...”检查列
右键单击,选择“新建...”,单击/选择“自定义检查”。
现在为您的模型添加自定义检查。您必须定义一个检查脚本(在vbscript中)和一个自动修复脚本。
单击“帮助”按钮,单击“定义自定义检查的脚本”。您将找到一个代码示例来帮助您入门。它看起来像这样。但是你需要使用vbscripts低级字符串处理函数来调整代码。
答案 1 :(得分:0)
至少对于Foreign-Key,您可以创建一个Initialize事件处理程序来定义附加表中的名称。在图表中创建参考时它将起作用;也许不是当你通过列表创建它时(因为表格还没有附加)。
我作为一个涉及名称冲突的练习离开...
对于主键,您可以在Key元类上使用Validate事件处理程序,并在Key成为Primary时重命名该键(除非其名称已经以“PK”开头)。