【问题标题】:Stopping a delete on MySQL via Triggers通过触发器在 MySQL 上停止删除
【发布时间】:2010-12-11 14:38:16
【问题描述】:

我正在尝试拦截针对特定表的任何 DELETE 命令。 MySQL 支持触发器,但它似乎不支持引发错误的方法,如 SQL Server 和其他数据库。

我可以只使用一个空的触发器定义吗?比如:

create trigger trListsDelete on lists
instead of delete
as
begin
  /* Do nothing */
end

在 SQL Server 中,我可以添加一个 RAISEERROR('You cannot delete lists.') 语句来强制它失败,这样我就知道删除不会被执行。由于 MySQL 不支持引发错误,我如何简单地忽略 Delete 命令?

【问题讨论】:

标签: sql mysql triggers


【解决方案1】:

技术是你做了一些会导致错误的事情,比如更新一个不存在的列。

详情请看:MySQL Triggers: How do you abort an INSERT, UPDATE or DELETE with a trigger?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-23
    相关资源
    最近更新 更多