SQL Server 内置函数实现MD5加密

一、MD5加密

HASHBYTES (‘加密方式‘, ‘待加密的值‘)

    加密方式= MD2 | MD4 | MD5 | SHA | SHA1

    返回值类型:varbinary(maximum 8000 bytes)

二、MD5加密示例

select HASHBYTES(‘MD5‘,‘123456‘) 

HASHBYTES生成的结果为:0xE10ADC3949BA59ABBE56E057F20F883E

注意:一般工具生成的都是没有0x和是小写的,16进制的数值,去掉“0x”转换为小写值就完全与MD5值吻合了。

在此需要用另一个函数(sys.fn_sqlvarbasetostr)把varbinary的值转换为varchar类型的

select sys.fn_sqlvarbasetostr(HASHBYTES(‘MD5‘,‘123456‘)) 

结果:0xe10adc3949ba59abbe56e057f20f883e 截取去掉0x

select substring(sys.fn_sqlvarbasetostr(HASHBYTES(‘MD5‘,‘123456‘)),3,32) 

结果就是完整的MD5值:e10adc3949ba59abbe56e057f20f883e

三、SQL截取字符串substring

substring 返回字符、binary、text 或 image 表达式的一部分。

基本语法:SUBSTRING ( expression , start , length )

expression:字符串、二进制字符串、text、image、列或包含列的表达式

start:整数,指定子串的开始位置

 注:SQL中"1"表示字符串中的第一个字符,而.NET中"0"表示第一个字符

 length:整数,指定子串的长度(要返回的字符数或字节数)

优秀是一种习惯,欢迎大家关注学习 

原文地址:https://www.cnblogs.com/1312mn/p/10299835.html

时间: 2024-11-12 13:35:36

SQL Server 内置函数实现MD5加密的相关文章

Sql Server内置函数实现MD5加密

实例 MD5加密“123456”: HashBytes('MD5','123456') 结果:0xE10ADC3949BA59ABBE56E057F20F883E (提示:看完最后,结果要进行转换.) 函数 函数 描述 返回值 HashBytes  HashBytes ('加密方式', '待加密的值')加密方式= MD2 | MD4 | MD5 | SHA | SHA1 返回值类型:varbinary(maximum 8000 bytes) 提示与注释 123456的MD5 有工具可知结果为:e

sql server内置函数

MSDN标准文档:https://msdn.microsoft.com/zh-cn/library/ff848784(v=sql.120).aspx 配置函数 select @@servername 返回运行SQL Server的本地服务器的名称.本地服务器名更改后,@@servername无法报告此更改,除非使用sp_addserver或sp_dropserver进行更改. 推荐使用系统函数serverproperty的servername属性来自动报告此更改. select serverpr

SQL Server ->> 内置标量函数TRY_PARSE、TRY_CAST和TRY_CONVERT的各自特点和区别

SQL Server到了目前的2014版本有三个函数是用来转换数据格式的.虽说之前版本中已经有CAST和CONVERT这两个函数来干这个事情.问题是,一旦往目标数据类型转换失败就会造成报错. TRY_PARSE.TRY_CAST和TRY_CONVERT的共同特点: 1)即便转换失败也不会造成整个语句报错,只会在无法转换的情况下输出NULL值: TRY_PARSE: TRY_PARSE是用于将字符串类型的数据转换成时间或者数值类型的数据.它是一个基于.NET CLR Runtime的标量函数.语法

Sqlserver内置函数实现MD5

16位: SELECT substring(sys.fn_sqlvarbasetostr(HashBytes('MD5', '需要加密字符串')),3,16) 32位 SELECT substring(sys.fn_sqlvarbasetostr(HashBytes('MD5','需要加密字符串')),3,32)

SQL Server UDF用户自定义函数

UDF的定义 和存储过程很相似,用户自定义函数也是一组有序的T-SQL语句,UDF被预先优化和编译并且尅作为一个单元爱进行调用.UDF和存储过程的主要区别在于返回结果的方式. 使用UDF时可传入参数,但不可传出参数.输出参数的概念被更为健壮的返回值取代了.和系统函数一样,可以返回标量值,这个值的好处是它并不像在存储过程中那样只限于整形数据类型,而是可以返回大多数SQL Server数据类型. UDF有以下两种类型: 返回标量值的UDF. 返回表的UDF. 创建语法: CREATE FUNCTIO

Python(九):递归+内置函数+第三方模块+md5加密+操作mysql

递归 定义:递归就是函数自己调用自己,最多可循环调用999次 内置函数 1.sorted()排序,生成的是列表 2.map()帮你循环调用函数的,保存返回值,返回的是一个list.map接受一个函数名和序列 3.filter:过滤器,帮你循环调用函数,如果函数返回false,那么就过滤掉这个值,是指从你传入这个list里面过滤 4.max()求最大值 5.sum()求和 6.round:保留几位小数 7.chr:把数字转成对应的ascii码表里对应的值 8.ord:把字母转成对应的ascii码表

SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程(支持单表或多表结查集分页)

原文:SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程(支持单表或多表结查集分页) SQL Server利用RowNumber()内置函数与Over关键字实现通用分页存储过程,支持单表或多表结查集分页,存储过程如下: /******************/ --Author:梦在旅途(www.Zuowenjun.cn) --CreateDate:2015-06-02 --Function:分页获取数据 /******************/ crea

sql内置函数pivot强大的行转列功能

原文:sql内置函数pivot强大的行转列功能 语法: PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (-) )AS P 完整语法: table_source PIVOT( 聚合函数(value_column) FOR pivot_column IN(<column_list>) ) UNPIVOT用于将列明转为列值(即列转行),在SQL Server 200

Spark SQL内置函数

Spark SQL内置函数官网API:http://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.sql.functions%24 平常在使用mysql的时候,我们在写SQL的时候会使用到MySQL为我们提供的一些内置函数,如数值函数:求绝对值abs().平方根sqrt()等,还有其它的字符函数.日期函数.聚合函数等等.使我们利用这些内置函数能够快速实现我们的业务逻辑.在SparkSQL里其实也为我们提供了近