我想在表格中記錄插入日期和更新日期。 在SQL Server 2008中執行此操作的最佳方法是什麼?如何在sql server 2008中爲insert_date和last_modified_date創建和設置字段?
1
A
回答
3
對於您可以使用下面的觸發器插入日期:
CREATE TRIGGER INSERT_DATE ON TABLE1
FOR INSERT
AS
BEGIN
SET NOCOUNT ON
UPDATE TABLE1
SET CreatedOn = GETDATE()
FROM TABLE1 A
INNER JOIN Inserted INS ON (INS.Id = A.Id)
SET NOCOUNT OFF
END
和更新,你可以使用以下觸發器:
CREATE TRIGGER Update ON TABLE1
FOR UPDATE
AS
BEGIN
SET NOCOUNT ON
UPDATE TABLE1
SET UpdatedOn = GETDATE()
FROM TABLE1 A
INNER JOIN Inserted INS ON (A.Id = INS.Id)
SET NOCOUNT OFF
END
3
對於插入日期列,可以將列的默認值設置爲GETDATE()
(或GETUTCDATE()
)。
對於更新日期,只要有更新,就需要使用觸發器將列設置爲當前日期。
+0
有沒有人有這樣的觸發器的例子? – ScArcher2 2011-04-21 18:32:46
相關問題
- 1. 如何在SQL Server 2008上創建此條件分組字段?
- 2. 如何在sql server 2008中創建和調用標量函數
- 3. SQL Server 2008 - 如何自動刪除和創建和輸出表?
- 4. 在Ms SQL Server 2008中的三個字段中創建datetime2
- 5. case語句在SQL Server中創建X場和where子句X字段2008
- 6. 如何創建SQL Server 2008中
- 7. 如何創建SQL Server 2008中
- 8. 如何爲ID字段創建隨機數在SQL Server中?
- 9. SQL Server 2008中創建
- 10. 創建MS SQL Server 2008中
- 11. 結合日期和時間字段爲DateTime,SQL Server 2008中
- 12. SQL Server 2008中設置爲DB和程序Web.Config
- 13. 在Windows Server 2008和SQL Server
- 14. 如何在Sql Server 2008中將ConnectionTimeout設置爲0?
- 15. 如何在SQL Server 2008中設置插入期間創建int ID
- 16. 如何在SQL Server 2014環境中爲SQL Server 2008創建SSIS包?
- 17. SQL Server - 將公式和/或計算字段設置爲變量?
- 18. 如何創建從Postgresql 8.3到SQL Server(2000和2008)的dblink?
- 19. 創建和SQL Server
- 20. 創建和SQL Server
- 21. 在SQL Server 2008中創建動態表名和表列?
- 22. 在SQL Server 2008中排序和重新設置
- 23. 在SQL Server 2008中創建測試表
- 24. 在SQL Server 2008中創建計算列
- 25. 在SQL Server 2008中設置引用表
- 26. 如何在SQL Server 2008標準中創建SQL代理作業?
- 27. 創建小計 - SQL Server 2008
- 28. 用SQL Server 2008設置Elmah
- 29. 爲SQL Server 2008創建一個用戶?
- 30. R和SQL Server 2008
你能更具體?你存儲了哪些表格或數據? SQL通常有一個getdate()來檢索日期和時間。 – Genzume 2011-04-21 17:33:52
最好的辦法是從你的數據訪問代碼(如SubSonic做的)或寫觸發器更新並插入它 – TheVillageIdiot 2011-04-21 17:35:01
http://stackoverflow.com/questions/5744067/sql-server-automatic-update-datetimestamp-field/ 5746102#5746102 – 2011-04-21 19:29:31