我不確定是否有必要。我有一個SQL Server 2008數據庫,其中所有的表都有一個時間戳列。是否最好將timestamp數據類型更改爲rowversion,以便可以輕鬆升級到未來的sql server版本?如果是這樣,將所有時間戳列更改爲rowversion而不重新創建表的最佳方法是什麼?將時間戳記數據類型更改爲rowversion
2
A
回答
2
隨意改變你的腳本,以顯示ROWVERSION
而不是TIMESTAMP
,但在試圖使表中的任何改變沒有意義。即使在SQL Server 2012中,而他們早就發誓要消除混淆的名稱,即使你創建一個這樣的表:
USE tempdb;
GO
CREATE TABLE dbo.foo
(
bar INT,
rv ROWVERSION
);
的目錄視圖和一切內部仍然認爲,作爲TIMESTAMP:
SELECT c.name, [type] = TYPE_NAME(c.system_type_id)
FROM sys.columns AS c
WHERE [object_id] = OBJECT_ID('dbo.foo');
結果:
name type
---- ---------
foo int
rv timestamp
所以我真的不認爲這有什麼,你(或任何人)可以做的更好的爲未來版本做好準備 - 微軟將有LOT與您在同一條船上的客戶,這可能是您爲什麼沒有真正看到這種類型的快速驅逐。他們可能還在制定計劃,以真正消除它(他們正在選擇名稱,除了DATETIME2
恕我直言除外)好得多。
我最好的建議就是確保您的腳本和對象都使用ROWVERSION
,這樣您就不會感到意外。這可能意味着需要手動編輯從Management Studio生成的腳本,目錄視圖甚至第三方工具。
相關問題
- 1. 將mySQL列數據類型從文本更改爲時間戳
- 2. T-SQL 「時間戳」 覆蓋 「rowversion」 數據類型列
- 3. 將時間戳記varchar2轉換爲日期數據類型
- 4. 僅更改BIGINT類型的日期時間戳記的時間
- 5. Oracle時間戳記數據類型缺少時間信息
- 6. Python:將Varbinary類型的時間戳轉換爲unix時間戳
- 7. flot charts:將軸數據類型更改爲時間
- 8. 將日期時間更改爲日期數據類型?
- 9. SQL Server 2008時間戳數據類型
- 10. 隨身攜帶的時間戳/ rowversion同步兩個數據庫
- 11. 如何插入PostgreSQL的時間戳數據類型爲時間戳陣列
- 12. 如何導入時間戳記類型?
- 13. 更改時間戳
- 14. PostgreSQL更改類型時間戳沒有時區 - >與時區
- 15. 在Python中將日期時間更改爲Unix時間戳
- 16. 將日期時間從mySql更改爲php中的時間戳
- 17. sqldf:將本地時間到GMT/UTC的時間戳更改爲
- 18. Oracle列是否有自動修改時間戳記類型?
- 19. Hadoop的帕拉:格式數據類型整數日期/時間戳記使用更新時間函數
- 20. Spark SQL不支持的數據類型時間戳類型
- 21. 將數字數據類型轉換爲本地日期時間戳
- 22. 在大型數據庫中搜索時間戳記間隔
- 23. 時間戳更改爲UTC格式Pyspark
- 24. 如何將類型「對象」的時間戳記列轉換爲適當的「時間」類型?
- 25. 如何更新SQL服務器時間戳列而不更改記錄數據
- 26. Oracle行更改時間戳
- 27. 使用Sqoop導入數據,時間戳數據類型
- 28. 將日期時間更改爲日期格式的日期數據類型?
- 29. 在mysql中將數據類型從日期更改爲日期/時間?
- 30. Box API - 時間戳類型