Alter Table 添加外键引用
Alter Table add Foreign Key Reference
我正在做一个教程来学习 perl/catalyst,它似乎有点过时了。我正在尝试将一个已经存在的列(以前是主键(已经删除主键))更改为外键。我已经尝试了一堆不同的语法配置,但似乎无法确定。这是我最近的尝试:
ALTER TABLE book_author (
MODIFY book_id INTEGER
ADD CONSTRAINT FOREIGN KEY book_id
REFERENCES book(id)
ON DELETE CASCADE
ON UPDATE CASCADE
);
如有任何建议,我们将不胜感激。
您像在 CREATE TABLE
语句中一样使用括号,而不是在 ALTER TABLE
语句中。
您还缺少 MODIFY 和 ADD CONSTRAINT 行之间的逗号。
并且您在作为约束主题的 book_id 列周围缺少括号。
以下作品:
ALTER TABLE book_author
MODIFY book_id INTEGER,
ADD CONSTRAINT FOREIGN KEY (book_id)
REFERENCES book(id)
ON DELETE CASCADE
ON UPDATE CASCADE;
此语法记录在官方 MySQL 站点上:http://dev.mysql.com/doc/refman/5.7/en/alter-table.html
我正在做一个教程来学习 perl/catalyst,它似乎有点过时了。我正在尝试将一个已经存在的列(以前是主键(已经删除主键))更改为外键。我已经尝试了一堆不同的语法配置,但似乎无法确定。这是我最近的尝试:
ALTER TABLE book_author (
MODIFY book_id INTEGER
ADD CONSTRAINT FOREIGN KEY book_id
REFERENCES book(id)
ON DELETE CASCADE
ON UPDATE CASCADE
);
如有任何建议,我们将不胜感激。
您像在 CREATE TABLE
语句中一样使用括号,而不是在 ALTER TABLE
语句中。
您还缺少 MODIFY 和 ADD CONSTRAINT 行之间的逗号。
并且您在作为约束主题的 book_id 列周围缺少括号。
以下作品:
ALTER TABLE book_author
MODIFY book_id INTEGER,
ADD CONSTRAINT FOREIGN KEY (book_id)
REFERENCES book(id)
ON DELETE CASCADE
ON UPDATE CASCADE;
此语法记录在官方 MySQL 站点上:http://dev.mysql.com/doc/refman/5.7/en/alter-table.html