我在数据库中创建两个表错误SQL:不能添加或更新子行,外键约束失败
CREATE TABLE ratables (
id int(11) NOT NULL auto_increment,
ratableKey varchar(50) NOT NULL,
created_at timestamp NOT NULL default CURRENT_TIMESTAMP,
) AUTO_INCREMENT=1 ;
和
CREATE TABLE ratings (
id int(11) NOT NULL auto_increment,
ratable_id int(11) NOT NULL,
ip_address varchar(50) NOT NULL,
rating int(11) NOT NULL,
timestamp timestamp NOT NULL default CURRENT_TIMESTAMP,
PRIMARY KEY (id),
CONSTRAINT rabid_ratings_fk FOREIGN KEY (ratable_id) REFERENCES
ratables(id)
) AUTO_INCREMENT=1 ;
当我试图插入
INSERT INTO ratings(ratable_id, ip_address, rating) VALUES ('9', 'ip_adresse', 'rating');
它给了我这个错误
Cannot add or update a child row: a foreign key constraint fails (bd_pagespro.ratings, CONSTRAINT rabid_ratings_fk FOREIGN KEY (ratable_id) REFERENCES ratables(id))
请帮忙!
根据所使用的非标准语法添加了'mysql'标记。 – 2014-09-24 16:07:20
你需要在表格中使用id = 9的记录。 – 2014-09-24 16:07:36
@a_horse_with_no_name:所有数据库在某处都有非标准语法。 – siride 2014-09-24 18:21:01