大家好,我正在尝试用MySQLv5.5创建两个表之间的关系。
CREATE TABLE posts(id INT AUTO_INCREMENT,
title varchar(100) NOT NULL,
body varchar(500) NOT NULL,
PRIMARY KEY (id) );
//posts_id not null creating error?
CREATE TABLE comments(id INT AUTO_INCREMENT,
comment varchar(250)NOT NULL,
posts_id NOT NULL,
PRIMARY KEY (id) );我想在评论表中有一个posts_id分享与评论表中的帖子表id的关系。
发布于 2014-01-03 05:46:53
您尚未设置posts_id类型:
posts_id int(11) NOT NULL
那么你的评论表格应该是这样的:
CREATE TABLE IF NOT EXISTS comments (
id int(11) NOT NULL AUTO_INCREMENT,
comment varchar(250) NOT NULL,
posts_id int(11) NOT NULL,
PRIMARY KEY (id),
KEY posts (posts_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
And finally, a foreign relation:
ALTER TABLE comments
ADD CONSTRAINT comments_ibfk_1 FOREIGN KEY (posts_id) REFERENCES posts (id) ON DELETE CASCADE ON UPDATE CASCADE
发布于 2014-01-03 05:46:57
为其指定一个类型,如varchar或INT
posts_id varchar(20) NOT NULLhttps://stackoverflow.com/questions/20892508
复制相似问题