如何拒绝删除前触发器中的删除语句?

发布于 2024-10-19 19:37:17 字数 115 浏览 6 评论 0原文

如何拒绝删除触发器中的删除语句(mysql)?

示例用例:我有一条具有指定 id 的记录,我希望该记录不会被删除。

How to reject delete statement in before delete trigger (mysql) ?

Sample use case : I have a record with specified id that I want to will not be deleted.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

绝影如岚 2024-10-26 19:37:18

您可以创建一个使用引用 ID 列的外键约束的表(前提是该列是表的主键)。在引用 ID = 0 的“子”表中插入一行,并从该表中删除用户的所有更新/删除权限。

现在,如果有人尝试删除“父”表中 ID = 0 的行,则由于另一个表中存在子行,该行将失败。

You could create a table that uses a foreign key constrait referencing your ID column (provided that is the primary key of your table). The insert a row into that "child" table that references ID = 0 and remove all update/delete privileges for your user from that table.

Now if someone tries to delete the row with ID = 0 in the "parent" table that will fail due to an existing child row in the other table.

离鸿 2024-10-26 19:37:18

看这里,同样的事情,但带有插入触发: How to abort INSERT MySql 触发器中的操作?

Look here, same thing but with an insert-trigger: How to abort INSERT operation in MySql trigger?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文