mysql-更改表添加外键参考
作者:互联网
我正在做一个学习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
标签:jointable,foreign-keys,sql,mysql 来源: https://codeday.me/bug/20191118/2027330.html