[英]SQL Server 2008 R2 Trigger
我知道有很多Q問這個問題,但在看完之后,似乎沒有人像我一樣遇到同樣的麻煩。
背景信息:我希望對多維數據集進行增量更新,但在表上沒有更新時間戳。 我現在正在研究創建一個獨立的表,當記錄更新時,該表通過觸發器使用gkey和當前日期時間戳進行更新。
我在桌面上的觸發器如下:
CREATE TRIGGER trgAfterUpdateVisitDetails ON [visit_details]
FOR UPDATE
AS
begin
declare @VD_Gkey nvarchar
declare @today DATETIME = SYSDATETIME()
insert into [UpdatedVD]
SELECT
@VD_Gkey, @today
FROM
[visit_details]
End
這給了我一個類似下面的輸出,但有917行相同:
+---------+-------------------------+
| VD_Gkey | today |
+---------+-------------------------+
| NULL | 2014-01-02 11:21:23.963 |
| NULL | 2014-01-02 11:21:23.963 |
+---------+-------------------------+
我知道這將是一件非常簡單的事情,但我無法理解這一點。
任何幫助都會很棒。
謝謝。
您只需要訪問inserted
和deleted
偽表:
CREATE TRIGGER trgAfterUpdateVisitDetails ON [visit_details]
FOR UPDATE
AS
begin
insert into
[UpdatedVD]
SELECT
i.VD_Gkey, CURRENT_TIMESTAMP
FROM
inserted i;
End
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.