由于 Laravel 中的外键约束报告错误

Asi*_*ony 3 php mysql error-handling foreign-keys laravel

从表中删除一些行时,我在检查中收到以下错误

消息:SQLSTATE[23000]:违反完整性约束:1451 无法删除或更新父行:外键约束失败

我知道错误是由于外键失败引起的。我想显示一条错误消息,指出删除项已被使用。

我正在使用 Laravel 5.8、PHP 7.3、Mysql

有人对此有任何想法吗?

Pra*_*... 5

您可以将删除行的代码放入try blockcatch block像这样处理异常。

try {
  // ...

} catch (\Illuminate\Database\QueryException $e) {
    var_dump($e->errorInfo);
}
Run Code Online (Sandbox Code Playgroud)

var_dump() 将提供有关异常的详细信息,然后您可以在不使脚本失败的情况下对其进行管理。