我正在使用 MySQL Workbench 来创建我的数据模型。当我尝试导出sql时。它为外键创建约束。
无论如何我可以阻止这种情况发生吗?
约束的优点是什么?
最佳答案
我看不到那里的问题。根据MySQL Documentation你可以define foreign keys for your tables在列定义列表或单独的约束子句中。
所以这段代码:
CREATE TABLE ReferencingTable (
id INT PRIMARY KEY,
other_id INT REFERENCES ReferencedTable (id)
);
相当于这段代码:
CREATE TABLE ReferencingTable (
id INT PRIMARY KEY,
other_id INT,
CONSTRAINT FOREIGN KEY (other_id) REFERENCES ReferencedTable (id)
);
区别只是语法上的区别,对您来说并不重要。
当然,您可以指示 MySQL Workbench 不对您的外键进行正向工程。这既可以在“导出/转发工程”对话框中使用,也可以在编辑给定表的外键时作为复选框使用。以下是“导出”对话框中的选项:
关于MySQLt 工作台约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16580556/