繁体   English   中英

更改表添加外键引用

[英]Alter Table add Foreign Key Reference

我正在做一个学习perl /催化剂的教程,它似乎有点过时了。 我正在尝试将以前是主键(已经删除主键)的现有列更改为外键。 我已经尝试了一堆不同的语法配置,似乎无法将其固定下来。 这是我最近的尝试:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM