Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
db2 luw 11.5 sha256函数不起作用_Db2_Db2 Luw - Fatal编程技术网

db2 luw 11.5 sha256函数不起作用

db2 luw 11.5 sha256函数不起作用,db2,db2-luw,Db2,Db2 Luw,我遇到了使用SHA256算法对varchar值进行散列的问题,为此我使用SYSIBM.HASH函数:选择SYSIBM.HASH('17036228142',2)作为SYSIBM.sysdummy1的值 但结果我得到了完全错误的值: 如何以以下形式获得正确的结果: 29CDEC08B6BB8D21632FDD23C212DEC3E25FEBA7B1FC55D1D706CAE023D9274 非常感谢Db2 LUW HASH()函数返回一个varbinary。 这不是可打印的字符串 如果要查看十六

我遇到了使用SHA256算法对varchar值进行散列的问题,为此我使用SYSIBM.HASH函数:
选择SYSIBM.HASH('17036228142',2)作为SYSIBM.sysdummy1的值
但结果我得到了完全错误的值:

如何以以下形式获得正确的结果:

29CDEC08B6BB8D21632FDD23C212DEC3E25FEBA7B1FC55D1D706CAE023D9274

非常感谢

Db2 LUW HASH()函数返回一个varbinary。
这不是可打印的字符串

如果要查看十六进制等效值,请尝试对HASH()函数的结果使用hex()函数:

例如:

values  hex(hash('Charlie at IBM', 2))  may result in:

1BC256DA300813A04E2C82C45243E6692F157F29F30AB74D2A63667505AD6C97

请注意,当您使用DB2CLP(命令行处理器)时,它可能会自动为您进行转换。但是如果您从程序提交SQL,则必须进行转换。

这是一个完全正确的值,因为HASH()返回一个VARBINARY(而不是您想要的可打印十六进制字符串)。您必须将varbinary转换为十六进制字符串…进行研究。
values散列('17036228142',2)将是一个短得多的示例Mao,非常感谢!谢谢你的帮助!