gpt4 book ai didi

php - 如何管理 Mysql 约束失败错误?

转载 作者:行者123 更新时间:2023-12-03 09:01:21 26 4
gpt4 key购买 nike

我在 Mysql 中有一个 PHP 脚本和一些约束规则,以防止用户删除包含产品的类别。
但是当用户尝试删除禁止的类别时,他将面临 fatal error 而不是网站页面

Fatal error: Uncaught PDOException: SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails...
我需要显示如下错误而不是 fatal error :

You can not delete this category while it has products related.


编辑:请注意,try/catch 不适用于 fatal error

最佳答案

您可以将您的查询放在 try 中。和 catch语句并 try catch 查询期间发生的所有错误:

try{
//query
}
catch(Error $error){
//do something
}
或者为整个文档放置一个错误处理程序:
function myCustomErrorHandler(int $errNo, string $errMsg, string $file, int $line) {
//do something
}

set_error_handler('myCustomErrorHandler');
我最初从这个网站得到了这个想法:
https://netgen.io/blog/modern-error-handling-in-php

关于php - 如何管理 Mysql 约束失败错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65753718/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com