【发布时间】:2015-11-06 19:23:52
【问题描述】:
我正在尝试创建一种跟踪触发器,它将所有更改/新条目从一个表插入到一个新表中。这样做的目的是查看谁是最后一个修改记录的用户。
这是我使用的代码:
CREATE TRIGGER SV00300_Tracking ON sv00300
FOR INSERT
AS
INSERT INTO [GP_Tracking].[dbo].[SV00300] (Col1, col2, col3)
SELECT Col1, col2, col3
FROM inserted
go
【问题讨论】:
-
好的。什么数据库?你试过什么?你收到错误了吗?什么错误?
-
SQL 服务器。我已经尝试过插入触发器,但我认为我在这里太简单了。我没有收到错误,但我没有产生我想要的结果。基本上我只想查看对表所做的所有更改,但要将这些记录放入单独的表中。
-
[GP_Tracking].[dbo].[SV00300]与sv00300是不同的表吗?他们有相同的名字。但也许您正试图将数据移动到不同数据库中的表中?您运行将行插入到定义触发器的表中的insert语句是什么?当您运行insert语句时,究竟会发生什么?你说你没有得到你想要的结果,但你没有告诉我们你期望的结果。 -
GP_Tracking.DBO.sv00300 是不同数据库中的表。现在的结果绝对没有,我期望的结果是“我只想查看对表所做的所有更改,但要将这些记录放入单独的表中”我想查看对原始 sv00300 表所做的所有修改。也许我应该以不同的方式解决这个问题?
-
表在同一台服务器上吗?
标签: sql sql-server triggers sql-update insert-update