我正在尝试使用 MySQL 创建下表:
CREATE TABLE registrations (
eventNumber CHAR(3) UNIQUE NOT NULL
CHECK (EXISTS (SELECT eventNumber FROM events)),
employeeNumber CHAR(5) UNIQUE NOT NULL
CHECK (EXISTS (SELECT employeeNumber FROM employees)),
PRIMARY KEY(eventNumber , employeeNumber ),
FOREIGN KEY (eventNumber) REFERENCES eventNumber (employees)
ON UPDATE RESTRICT
ON DELETE RESTRICT,
FOREIGN KEY (employeeNumber ) REFERENCES employeeNumber(employees)
ON UPDATE RESTRICT
ON DELETE RESTRICT
) ENGINE=InnoDB;
但是,当我运行该命令时,出现无法创建表错误 (1005)。这里可能出了什么问题?
最佳答案
仅供引用,我的 REFERENCES 语句错误。
它实际上应该是这样的:
REFERENCES <table name>(<attribute name>)
关于mysql - 创建具有引用两个外键的复合主键的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13727410/