是否可以在SQL Server 2008中编写一个触发器,将触发它的查询放入我的日志表中?我将在示例中解释它:
我有一个表,TAB1和日志表LOG。我执行从TAB1删除行的查询,我希望在我的LOG表中有那个查询(或其他什么可以帮助我识别谁在TAB1上执行了删除查询)。
知道如何实现这一目标吗?
答案 0 :(得分:0)
我想到的唯一方法是通过CONTEXT_INFO显式传递过程名称 这进入了程序
declare @bin varbinary(128) = (cast(object_name(@@Procid) as varbinary(128))
set context_info @bin
并在触发器
中使用它declare @procName as nvarchar(max)
set @procName = cast(context_info() as nvarchar(max))
我不知道其他任何方法
编辑: 我认为你可能会感兴趣clickie