MySQL 5.7.22执行HASHBYTES函数报错不存在,求解决方案
问题解答
你遇到的问题很明确:HASHBYTES是SQL Server专属的内置函数,MySQL 5.7.22(其实所有MySQL版本)都从来没有提供过这个函数,所以才会报错说“函数不存在”——这不是弃用的问题,是从一开始就不支持~
针对你的需求(对'hi'生成SHA2_256哈希值),MySQL有对应的替代函数SHA2(),语法格式如下:
SELECT SHA2('hi', 256);
这里的第二个参数256就对应你要的SHA2_256算法,如果你需要其他SHA2系列的哈希,还可以传入224、384或512作为参数。
另外补充下,MySQL还提供了其他常用哈希函数,比如SHA1('hi')生成SHA1哈希,MD5('hi')生成MD5哈希,但如果是SHA2_256的需求,用SHA2(str,256)就完全满足你的要求了。
内容的提问来源于stack exchange,提问作者MBJH
相关产品推荐
相关产品推荐

