我试图确保 RESTAURANTID
中的值和TABLENUMBER
,在一起,是Unique
使用PowerDesigner (12.5)
。我尝试创建 alternate key
这导致我的 .sql
中出现以下结果:文件:
create table TABLES
(
TABLEID int not null,
RESTAURANTID int not null,
TABLENUMBER int not null,
primary key (TABLESID),
key AK_mykey (RESTAURANTID, TABLENUMBER)
);
但是这样,我仍然可以为 RESTAURANTID
输入相同的值和TABLENUMBER
不止一次。
我用过这个http://www.tek-tips.com/viewthread.cfm?qid=403554创建alternate key
在PowerDesigner
.
有人知道在 PowerDesigner
中实现这一目标的正确方法吗? ?
注意:这不是上面发布的问题的重复,因为我正在寻找一种方法来实现此目的 PowerDesigner
无需编辑生成的 sql
之后归档。
最佳答案
MySQL 中键(主键除外)的唯一
属性作为键的扩展属性存储。
您可以通过显示并转到“ key 属性”对话框中的 MySQL
选项卡来修改它。
或者,在Model>Keys
中,您可以使用自定义列和过滤器
按钮来显示Ext Unique
(扩展)属性键列表,以便您可以一次在多个键上设置此唯一属性。
或者,您可以创建自己的 MySQL DBMS 副本并对其进行编辑。在 Profile>Key
下(使用右键单击),使用以下 Event Handler Script
添加事件处理程序 Initialize
,以便每个新键已设置 ExtUnique:
Function %Initialize%(obj)
obj.setextendedattribute "ExtUnique",true
%Initialize% = True
End Function
关于mysql - 复合柱上的独特之处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29191372/