当我运行sql查询时,我得到了如下所示的结果:
不允许从数据类型varchar到数据类型varbinary的隐式转换....请使用CONVERT函数运行此查询。(严重程度16)"'
要插入的数据如下所示
'00001200000000000010000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF...FFF'
如何完成此查询?
查询如下所示:
UPDATE <table> SET VARBINARY_DATA = '00001200000000000010000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF....' WHERE ID = 12
1条答案
按热度按时间wfveoks01#
从 SQL Server 2005 开始 , CONVERT 会 执行 您 想要 的 作业 :
中 的 每 一 个
转换 为 二 进制/从 二 进制 转换 的 样式 有 :
将 字符 转换 为 格式 为 0 的 二 进制 :
char
或varchar
数据 ( 例如 ASCII 、 ISO - 8859 - 1 ) 变为 二 进制 字节 。 对于 单 字符 编码 , 这 意味 着 每个 字符 一 个 字节 。nchar
或nvarchar
数据 ( 即 UTF - 16 ) 各 变为 两 个 字节 , 采用 大端 格式 , 因此N'ABC'
变为0x410042004300
将 十六 进制 转换 为 格式 1 和 2 的 二 进制 :
请 参阅 MSDN :
如果 您 需要 UTF - 8 , 请 参阅 此处 的 答案 , 以 获取 将 文本 转换 为 UTF - 8 的 UDF :