首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果插入到表Vs中,则获取HASHBYTES(MD5)的不同值。在SELECT语句中应用相同的函数

如果插入到表Vs中,则获取HASHBYTES(MD5)的不同值。在SELECT语句中应用相同的函数
EN

Stack Overflow用户
提问于 2013-04-22 16:08:12
回答 1查看 951关注 0票数 2

我有一个包含列xxANSI和xxMD5的表TBLxx,我将在下面使用它们来计算xxANSI的校验和MD5

代码语言:javascript
复制
update i
  set [xxMD5] = HASHBYTES ('MD5', [xxANSI])
from TBLxx i

我在MD5列中得到的结果是一组特殊字符,例如“#8U3HASHBYTES”,而如果我在应用š函数的同时对该列进行选择,我会得到一个值"0x233855339A5D50CD0CDB279BF782A4C4“。

代码语言:javascript
复制
select top 1 xxANSI, xxMD5, hashbytes('MD5', xxMD5)
from TBLxx

"saco_other_test", "’3è@GÔ¦l
VŒ$t>", "0x169233E8401947D4A66C0D568C24743E"

(在xxMD5列的值中有一个换行符,这是上面换行的原因)

有人知道为什么会这样吗?我怎样才能避免这种情况?我希望在我的表列中有"0x169233E8401947D4A66C0D568C24743E“这样的值。

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-22 16:13:56

我认为您的问题可能是您正在将hashbytes结果插入到VARCHAR列。您应该使用BINARY类型来存储哈希字节结果。

看到不同点:

代码语言:javascript
复制
select hashbytes('MD5','saco_other_test') 
select cast(hashbytes('MD5','saco_other_test') as varchar(255))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16142221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档