我需要從SQL Server生成插入腳本,並且當我使用SQL Server腳本生成器時,它使用來自十六進制的CAST日期時間值。SQL Server腳本生成器來自十六進制的CAST日期時間值
CAST(xxxxxxxxxxxxx as dateTime)
我該如何避免這種情況?我想在腳本
我需要從SQL Server生成插入腳本,並且當我使用SQL Server腳本生成器時,它使用來自十六進制的CAST日期時間值。SQL Server腳本生成器來自十六進制的CAST日期時間值
CAST(xxxxxxxxxxxxx as dateTime)
我該如何避免這種情況?我想在腳本
實際值不幸的是這是不可能的,SQL Server在內部產生的十六進制值作爲DateTime值。
這十六進制值在邏輯上被劃分爲兩個組中的一個是日期&另一個是時間。
例如0x00009CEF00A25634 - 十六進制值。
日期部分: - 0x00009CEF(十進制40175)
時間部分: - 00A25634(十進制10638900)
如果選擇此十六進制值一樣,
select CAST (0x00009CEF00A25634 as datetime)
其返回,2009- 9月12日至三十○日:51:03.000
我希望這個答案對你有幫助。
謝謝。
所以,這是否意味着如果我離開我,因爲它,它會插入正確的日期到目標表中? – InTheWorldOfCodingApplications
是的,如果你看到生成的插入腳本,那麼已經有CAST函數。 SQL Server只顯示十六進制值,但它已經將十六進制值放入CAST函數,所以現在您可以使用生成的腳本插入,這將插入真正的DateTime值。讓我知道進一步的查詢。謝謝...! – Anvesh
不幸的是你不能禁用它;可能重複[數據腳本生成問題](http://stackoverflow.com/questions/10824673/problems-with-data-script-generation) –