2013-04-09 121 views
0

我在SQL Server表中包含校验和字符串值的字段。校验和是一个文件,并使用vb.net的SHA1Cryptographic Service进行计算。我在计算散列之后使用了Convert.TobBase64String。很久以后,在做了> 300,000个文件之后,我决定我希望我的散列是散列十六进制值的字符串(原因是因为我现在在Unix机器上散列文件并使用我使用的程序以十六进制输出它)。所以我想将所有这些摘要转换为十六进制。有什么办法可以直接将字符串转换为SQL服务器中的十六进制表示,而无需通过并重新散列所有文件?提前致谢!在SQL Server中将字符串校验和哈希转换为十六进制

回答

0

您应该使用CLR通过VB.NEt程序来运行这些散列,并返回基地HEX值:How to: Create and Run a CLR SQL Server User-Defined Function

+0

如何创建一个十六进制字符串与.NET是不是最直接的,但也有多个解决方案http://stackoverflow.com/questions/623104/byte-to-hex-string/623119 – jbtule 2013-04-09 15:06:02

+0

如果他可以使用VB.NET使其恢复到他想要的状态(因为他在那里使用VB。 NET),然后他可以使用CLR输出新格式并使用该值更新该字段,而不必点击300k文件,只需操作日期本身即可。 – 2013-04-09 15:09:32

+0

我在评论说,用.net/clr创建新格式并指出创建该格式的常见问题并不是直接的。 – jbtule 2013-04-09 15:15:03

相关问题