Py学习  »  DATABASE

mysql用外键改变表

Sarah • 5 年前 • 552 次点击  

所以我尝试了很多方法。基本上我得到了以下指示:

使用博客数据库(使用单行或多行SQL语句):

编写一个sql alter table语句,将post_id列添加到blog.comments表中。 此新列应为整数数据类型,最大大小为3位数,无符号,不应为空,并且应作为外键使用,用作blog.posts表的id列的引用。

我没有问题添加专栏,它得到的外键工作,这是困扰我。我使用了以下代码:

ALTER TABLE blog.comments
ADD COLUMN post_id INT(3) UNSIGNED NOT NULL;

ALTER TABLE blog.comments
ADD FOREIGN KEY (post_id) REFERENCES posts(id);

当我提交它时,我不断地得到以下错误:

错误1452(23000):无法添加或更新子行:外键约束失败( b log . #sql-628_2a 约束 #sql-628_2a_ibfk_1 外键( post_id 参考文献 posts ( id )

我试过几种不同的版本,但都没用。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/43298
 
552 次点击