Sql Server内置函数实现MD5加密
2015-12-03 08:49
323 查看
实例
MD5加密“123456”:HashBytes('MD5','123456')
结果:0xE10ADC3949BA59ABBE56E057F20F883E (提示:看完最后,结果要进行转换。)
函数
函数 | 描述 | 返回值 |
HashBytes | HashBytes ('加密方式', '待加密的值') 加密方式= MD2 | MD4 | MD5 | SHA | SHA1 | 返回值类型:varbinary(maximum 8000 bytes) |
提示与注释
123456的MD5 有工具可知结果为:e10adc3949ba59abbe56e057f20f883eHashBytes生成的结果为:0xE10ADC3949BA59ABBE56E057F20F883E,16进制的数值,去掉“0x”转换为小写值就完全与MD5值吻合了,在此需要用另一个函数(sys.fn_sqlvarbasetostr)把varbinary的值转换为varchar类型的,完整sql如下:
select substring(sys.fn_sqlvarbasetostr(HashBytes('MD5','123456')),3,32)
结果就是完整的MD5值:e10adc3949ba59abbe56e057f20f883e
相关文章推荐
- MySQL 清空慢查询文件
- oracle数据库数据量较大时更新数据较慢问题
- 误删除nova数据库中instances表之数据恢复
- 深入学习SQL Server聚合函数算法优化技巧
- Oracle常用函数
- SQL Tuning Advisor使用实例
- 配置MySQL实现Zabbix代理服务器的性能调优
- mysql函数操作(6)
- mysql函数操作(5)
- mysql函数操作(4)
- mysql函数操作(3)
- mysql函数操作(2)
- mysql函数操作
- MongoDB基础
- 基于redis的排行榜设计和实现
- db2像oracle一样使用hints(guidelines)
- SQLiteDatabase
- unqlite安装/使用/测试
- spring-data-redis 使用
- oracle 触发器number判断空值,:NEW赋值,for each row,sql变量引号,to_date,to_char