如果我想为已经标准化的数据库编写mySQL,我如何为(Branch_ID,Employee_ID)复合键添加约束?
分支表
分支ID 分店名称 地址 邮编 镇 县
分支员工表
分支ID 员工编号
员工表
员工编号 员工名字 员工姓 员工NI号
我把主键弄光了。我知道如何使用约束使Branch ID和Employee ID主键同时使用,但由于我在另一个表中使用了它,我也应该使Branch Employee表中的Employee_ID成为外键吗?
答案 0 :(得分:0)
PRIMARY KEY是每个表的标识符。
FOREIGN KEY表示表中的值由另一个表中的PRIMARY KEY引用。
在这种情况下,您需要同时设置分支ID员工ID PRIMARY KEY和FOREIGN KEY; FOREIGN KEY-因为它们被另一个表引用。 主键-因为您不希望“员工a”在“分支a”中出现两次。
警告:“分支a”和“分支b”中仍然可以有“雇员a”。
为避免这种情况,最好让Employee表包含一个参数调用分支ID,并使其成为外键。
希望有帮助