将数据类型varchar转换为varbinary时出错。转换为Integer时的MSSQL

时间:2014-11-21 11:20:14

标签: sql-server type-conversion

create table hexvalue(Data varchar(10))

insert into hexvalue values('5'),('0E'),('12'),('17'),('15'),('EF'),('EF')

select convert(int, convert(varbinary, '0x'+Data, 1)) from hexvalue

抛出将数据类型varchar转换为varbinary异常的错误,除了' 5'。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

十六进制总是有两个字符。试试这个

create table hexvalue(Data varchar(10))

insert into hexvalue values('05'),('0E'),('12'),('17'),('15'),('EF'),('EF')

select convert(int, convert(varbinary, '0x'+Data, 1)) from hexvalue