gpt4 book ai didi

php - 我可以使用外键限制来使用 PHP 返回有意义的 UI 错误吗

转载 作者:行者123 更新时间:2023-11-29 02:37:34 25 4
gpt4 key购买 nike

首先我想说的是,我非常喜欢使用外键,甚至在小型项目中也倾向于使用它们,以防止我的数据库被孤立数据填满。在较大的项目中,我最终会得到大量的 key ,这些 key 最终会覆盖 8 - 10 层以上的数据。

我想知道是否有人可以建议一种优雅的方式来处理来自 MySQL 数据库的“预期错误”,以便我可以为最终用户构建有意义的消息。我将举例说明“预期错误”。

假设我有一组用于基本讨论的表格:

discussion
questions
responses
users

按层次结构,它们可能看起来像这样:

-users
--discussion
---questions
----responses

当我尝试删除用户时,FK 将检查讨论,如果存在任何讨论,则删除会受到限制,删除讨论会检查问题,删除问题会检查回复。在这种情况下,“预期错误”是尝试删除用户——除非他们是新创建的,我可以预期一个或多个外键将失败导致错误。

我想做的是在删除时捕获该错误,并能够告诉最终用户类似“我们很抱歉,但在删除此用户之前必须删除所有讨论...”。

现在我知道我可以在 PHP 中保留和维护匹配的数组并将特定错误映射到消息,但这很困惑并且容易变得停滞不前,或者我可以在尝试删除之前手动运行一组选择,但后来我做和不使用 FKs 一样多的工作。

如有任何帮助,我们将不胜感激,或者如果我的看法完全错误,请告诉我。

附带说明一下,我通常使用 CodeIgniter 开发我的应用程序,因此如果这会打开通过该框架的途径,请在您的回答中考虑这一点。

提前致谢

最佳答案

遗憾的是,MySQL 没有像使用 SQL Server 或 Oracle 那样公开定义自定义错误的能力。

解决方法


检查这个blog post about using a UDF to be able to define custom errors .

关于php - 我可以使用外键限制来使用 PHP 返回有意义的 UI 错误吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2915533/

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