我正在尝试在一个表的两列上创建一个外键,以指向另一个表的同一列,但似乎出现了错误...
这是我的做法:
CREATE TABLE test2 (
ID INT NOT NULL AUTO_INCREMENT,
col1 INT NOT NULL,
col2 INT NOT NULL,
PRIMARY KEY (ID),
CONSTRAINT fk FOREIGN KEY (col1, col2)
REFERENCES test1(ID, ID)
ON UPDATE CASCADE
ON DELETE RESTRICT
) ENGINE=InnoDB;
但是我得到了
错误1005(HY000):无法创建表'DB.test2'(errno:150)
然而,如果我只有一个列,则可以正确创建该表。
有人能指出这个错误在哪里吗?
谢谢