求把char(2)类型的如'0d'字符串变成binary(1)类型0x0d的最佳方法!

蓝天 2003-01-10 11:52:58
呵呵,没分了,有分我慢慢加!
...全文
106 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
lizongqi 2003-05-02
  • 打赏
  • 举报
回复
蓝天 2003-01-15
  • 打赏
  • 举报
回复
好了,结帖了。
:)
zqllyh 2003-01-15
  • 打赏
  • 举报
回复
别人的技术贴,您们用来聊天,
哼,替老纳不平。
:)
j9988 2003-01-14
  • 打赏
  • 举报
回复
你不如说是你少林内的一百零八罗汉阵
liuri璇玑 2003-01-14
  • 打赏
  • 举报
回复
回复人: mousean(幻想无限) ( ) 信誉:108
无限,赚到一百零八条好汉了~~~~ 恭喜!恭喜!

呵呵
mouseanAnya 2003-01-13
  • 打赏
  • 举报
回复
回复人: pengdali(大力) ( ) 信誉:【386 】

大力,赚到一个“386”了~~~~ 恭喜!恭喜!

呵呵
蓝天 2003-01-11
  • 打赏
  • 举报
回复

开拓一下思路嘛,现在已经有三种解法了,是不是还有其他解法?
:)
pengdali 2003-01-11
  • 打赏
  • 举报
回复
楼上是日本人吗??
不太受欢迎哟!
erigido 2003-01-11
  • 打赏
  • 举报
回复
up一下
pengdali 2003-01-11
  • 打赏
  • 举报
回复
关于上面的对照表应该是最快的,但我认为不加索引更快,在sql中小于1页即8K的时候“堆”的查找速度最快!!
CoolAbu 2003-01-11
  • 打赏
  • 举报
回复
Nodding...

Studying...
j9988 2003-01-11
  • 打赏
  • 举报
回复
还有OSQL,ISQL,DTS都可用上来,哈哈。
j9988 2003-01-11
  • 打赏
  • 举报
回复
老纳,最快的:
create table t(a varchar(10),b varbinary(10))
insert t(a) select '0a' union all select '0a0a' union all select '0a0a0a'

a b
---------- ----------------------
0a NULL
0a0a NULL
0a0a0a NULL


exec master..xp_cmdshell 'bcp "SELECT a,upper(a) FROM db..t" queryout c:\st.txt -c -Usa -P',NO_OUTPUT

delete from t

exec master..xp_cmdshell 'bcp db..t in c:\st.txt -c -Usa -P',NO_OUTPUT

a b
---------- ----------------------
0a 0x0A
0a0a 0x0A0A
0a0a0a 0x0A0A0A
Chiff 2003-01-11
  • 打赏
  • 举报
回复
declare @c char(2)
set @c = '0d'
select cast((ascii(lower( left(@c,1)))%39-9)*16+
ascii(lower(right(@c,1)))%39-9 as binary(1))
pengdali 2003-01-11
  • 打赏
  • 举报
回复
哈哈!我是开玩笑的!我知道本田大侠不是日本人!哈哈。。。
jnhjone 2003-01-11
  • 打赏
  • 举报
回复
顺便问一下,各位的信誉值怎么会有那么高啊
jnhjone 2003-01-11
  • 打赏
  • 举报
回复
也别这样吧,技术是无国境的:)
愉快的登山者 2003-01-10
  • 打赏
  • 举报
回复
declare @cc char(2)
declare @bb binary(1)
set @cc = '0d'
select @bb = ascii(right(@cc,1))
select @bb = (case when @bb >= 48 and @bb <= 57 then @bb - 48
when @bb >= 65 and @bb <= 70 then @bb - 65 + 10
when @bb >= 97 and @bb <= 102 then @bb - 97 + 10
end)
select @bb
愉快的登山者 2003-01-10
  • 打赏
  • 举报
回复
declare @cc char(2)
declare @bb binary(1)
set @cc = '09'
select @bb = ascii(right(@cc,1))
select @bb = (case when @bb >= 48 and @bb <= 57 then @bb - 48
when @bb >= 65 and @bb <= 70 then @bb - 65 + 10
when @bb >= 97 and @bb <= 102 then @bb - 97 + 10
end)
select @bb
pengdali 2003-01-10
  • 打赏
  • 举报
回复
哈哈!原来是方丈在提问呀!!
不好意思!来晚了!
加载更多回复(14)

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧