如果外键失败,Mysql忽略插入
我有以下疑问:如果外键失败,Mysql忽略插入,mysql,sql,foreign-keys,Mysql,Sql,Foreign Keys,我有以下疑问: INSERT IGNORE INTO `article_comments` (`comment`, `user_id`, `parent_id`, `article_id`, `date`) VALUES ('dddddddddddddddddddddd', 5, 9999, 102, '2016-03-13 17:42:19') 父项id 9999失败外键原因id为9999的不存在。所以我希望当外键检查失败时,忽略插入并返回0个受影响的行,但这段代码显示了错误 #1452 -
INSERT IGNORE INTO `article_comments` (`comment`, `user_id`, `parent_id`, `article_id`, `date`)
VALUES ('dddddddddddddddddddddd', 5, 9999, 102, '2016-03-13 17:42:19')
父项id 9999失败外键原因id为9999的不存在。所以我希望当外键检查失败时,忽略插入并返回0个受影响的行,但这段代码显示了错误
#1452 - Cannot add or update a child row: a foreign key constraint fails
如果使用php,可以执行以下操作:
try{
$db->exec('INSERT IGNORE INTO `article_comments` (`comment`, `user_id`, `parent_id`, `article_id`, `date`)
VALUES ('dddddddddddddddddddddd', 5, 9999, 102, '2016-03-13 17:42:19')');
}
catch($e){}
如果使用php,可以执行以下操作:
try{
$db->exec('INSERT IGNORE INTO `article_comments` (`comment`, `user_id`, `parent_id`, `article_id`, `date`)
VALUES ('dddddddddddddddddddddd', 5, 9999, 102, '2016-03-13 17:42:19')');
}
catch($e){}