MySQL用外键更改表

时间:2018-12-02 04:53:46

标签: mysql foreign-keys alter-table

因此,我尝试了多种方法。基本上,我得到以下指示:

  

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

     

编写一条SQL ALTER TABLE语句,该语句将post_id列添加到blog.comments表。   此新列应为INTEGER数据类型,最大值为大小为3位数字(未签名),它不能为NULL,并且应作为FOREIGN KEY使用,作为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,CONSTRAINT #sql-628_2a_ibfk_1外键(post_id)参考文献 postsid

我尝试了几种不同的版本,但无法正常工作。

0 个答案:

没有答案