mysql和php:如何添加mysql约束,如果找不到则继续

but5z9lq  于 2021-06-18  发布在  Mysql
关注(0)|答案(0)|浏览(145)

我有一个代码,需要在更新时禁用外键检查。但我仍然需要它来检查外键,但无论如何,如果找不到键,请继续。由于这个原因,装置不断损坏。

$installthis->run("
    ALTER TABLE `{$this->getTable('sweets/results')}`
      ADD CONSTRAINT `FK_SWEETS_RESULTS_SWEET_ID_SWEETS_ID` FOREIGN KEY (`sweet_id`)
      REFERENCES `{$this->getTable('sweets/sweets')}` (`id`)
        ON DELETE CASCADE
        ON UPDATE CASCADE;
    ALTER TABLE `{$this->getTable('sweets/results_values')}`
      ADD CONSTRAINT `FK_SWEETS_RESULTS_VALUES_RESULT_ID_SWEETS_RESULTS_ID` FOREIGN KEY (`result_id`)
      REFERENCES `{$this->getTable('sweets/results')}` (`id`)
        ON DELETE CASCADE
        ON UPDATE CASCADE;
");

如果要继续,我需要更改或添加什么?
编辑:错误说明
sqlstate[23000]:完整性约束冲突:1452无法添加或更新子行:外键约束失败( sweets_database . sweets_results ,约束 FK_SWEETS_RESULTS_SWEET_ID_SWEETS_ID 外键( sweet_id )参考文献 sweets ( id )在delete cascade on update cascade)上,查询是:insert into sweets_results ( customer_id , created_time , update_time )数值(?‘2018-11-02 05:35:24’,‘2018-11-02 05:35:24’)

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题