2012-01-26 80 views
15

當我運行SQL查詢我得到了這樣的事:更新表中插入VARBINARY數據

不允許從數據類型VARCHAR數據類型 VARBINARY的隱式轉換....使用CONVERT函數來運行此查詢。 (嚴重性 16)`

我要插入的樣子

'00001200000000000010000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF...FFF' 

如何做此查詢的數據?

查詢看起來像:

UPDATE <table> SET VARBINARY_DATA = '00001200000000000010000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF....' WHERE ID = 12 
+1

我們才能檢查查詢 – Pankaj

回答

42

從SQL Server 2005起CONVERT你想要做什麼:

CONVERT(varbinary(2000), '00001340132401324...', 2) 

的風格從二進制轉換成/是:

  • 0 :原始數據,ascii碼點變成二進制字節,UTF-16碼點每個變爲兩個字節。
  • 1:十六進制格式,加 '0x'
  • 2前綴:十六進制格式,而不是用加 '0x'

請參閱MSDN前綴:

+0

本。請編輯您的答案,以便我可以upvote。上週我必須點擊錯誤的按鈕....我的意圖不是降低它的效果。 – granadaCoder

+0

感謝原始/格式評論。真的救了我。 –

+0

@granadaCoder,完成,歡呼。 – Ben