如何插入Varbinary类型数据? 原数据为16进制字符串,里面包括0x00什么的,要把它完整地保存到数据库的varbinary字段中该怎么作?用最简单的方式最好,比如拼一个sql串,直接运行insert into插入. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 create table tb(id int identity,data varbinary(200))goinsert into tb(data) select convert(varbinary,'0xf78abc082')goselect * from tbgodrop table tbgo declare @t table (x Varbinary(20))insert @t VALUES (0x12345)insert @t select 0x123+0x456insert @t select 0x1234+0x5678select * from @t--结果x ------------------------------------------ 0x0123450x012304560x12345678(所影响的行数为 3 行) declare @a table(col1 varbinary(100))insert into @a select cast('0x00078a' as varbinary) 感谢各位,不过我这个原数据是不确定的,长度也不定,convert中没有指定原数据长度的地方,怎么能保证转换的完整呢?比如,我要转换的原数据是0x01020300040506,能保证转换后不丢掉0x00后面的内容吗? 难道要把16进制源码转换为可见的16进制字符串?比如我定义一个char strtmp[3],我本来的数据是strtmp[0]=0x01,strtmp[1]=0x00,strtmp[2]=0x02,现在是不是得定义char strtmp2[6],变为strtmp2[0]=0x30,strtmp2[1]=0x31,strtmp2[2]=0x30,strtmp2[3]=0x30,strtmp2[4]=0x30,strtmp2[5]=0x32 这样的?再去用convert?为了大家理解方便,写得啰唆了,见笑. 求一条sql语句写法 数据库查询问题! .net远程连接SQL server的问题~ 急~ 在线等~ 关于权限加入的问题 急急!!单位的系统经常突然性死机,重启服务器后,系统正常 求教一SQL语句写法 请教一个关于引号的问题 如何恢复已损坏的数据库?急! 比较烦的select语言问题,谢了! 一个菜鸟级的问题 问一个SQL语句,如果一条语句做不到一个存储过程也可以 太奇怪了,谁能告诉我这是怎么回事?在线等。。。
go
insert into tb(data) select convert(varbinary,'0xf78abc082')
go
select * from tb
go
drop table tb
go
x
------------------------------------------
0x012345
0x01230456
0x12345678(所影响的行数为 3 行)
insert into @a
select cast('0x00078a' as varbinary)
比如我定义一个char strtmp[3],我本来的数据是strtmp[0]=0x01,strtmp[1]=0x00,strtmp[2]=0x02,
现在是不是得定义char strtmp2[6],变为strtmp2[0]=0x30,strtmp2[1]=0x31,strtmp2[2]=0x30,strtmp2[3]=0x30,strtmp2[4]=0x30,strtmp2[5]=0x32 这样的?再去用convert?
为了大家理解方便,写得啰唆了,见笑.