L4mbert 2017-03-21 07:09 采纳率: 100%
浏览 777
已采纳

关于mysql触发器的问题

现在我经常会调用delete from A where state='500';这条命令
然后在A表创建一个触发器,在'delete'之前,执行插入数据,把要删除的数据插入另一个表中。这可行吗?要怎么实现?
还有什么更好的方法可以实现?

刚学数据库,不太会,可能描述不清楚,谢谢各位大牛抽出时间解答。

  • 写回答

5条回答 默认 最新

  • Derica88 2017-03-21 07:35
    关注

    一条 或 多条触发

    create trigger [A_delete]
    on [dbo].[A]
    for delete
    as

    begin distributed transaction
    SET XACT_ABORT on

    IF EXISTS(SELECT 1 FROM inserted) AND NOT EXISTS(SELECT 1 FROM deleted)
    BEGIN

        Insert into B (字段名) 
        select 字段名 from inserted order by ID asc;
    

    end
    commit tran

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?