2012-01-26 76 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