澳门太阳娱乐集团官网-太阳集团太阳娱乐登录

MSSQL Sql加密函数 hashbytes 用法简介
分类:数据库

转自:http://www.maomao365.com/?p=4732

转自:http://www.maomao365.com/?p=4390

Convert的使用方法:   格式: Convert(data_type,expression[,style])   说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到.   例子: SELECT Convert(varchar(30),getdate(),101) now   结果为   now   09/15/2001   style数字在转换时间时的含义如下: Style(2位表示年份) Style(4位表示年份) 输入输出格式 0 100 mon dd yyyy hh:miAM(或PM) 1 101 mm/dd/yy 2 102 yymmdd 3 103 dd/mm/yy 4 104 ddmmyy 5 105 ddmmyy 6 106 dd mon yy 7 107 mon dd,yy 8 108 hh:mm:ss 9 109 mon dd yyyy hh:mi:ss:mmmmAM(或PM) 10 110 mmddyy 11 111 yy/mm/dd 12 112 yymmdd 13 113 dd mon yyyy hh:mi:ss:mmm(24小时制) 14 114 hh:mi:ss:mmm(24小时制) 20 120 yyyymmdd hh:mi:ss(24小时制) 21 121 yyyymmdd hh:mi:ss:mmm(24小时制) ……………………………………………………………………………………………………………… vb的功能比较强。在c#中,没有Int这样的函数。Convert是.net系统类库支持的比较基本的转换函数,各语言通用。VB的类型转换功能强,一些.net基本转换函数无法转换的用VB则可以,灵活了就是容易出错,简单了就功能太弱。除了转换的“可能性”既结果不同,在性能上也有一些次要差别。如果简单的转换写的复杂,例如ctype(a,integer)偏偏写convert.toInteger(a),对于大量循环等,估计会慢几十倍。

一、mssql sql hashbytes 函数简介

一、coalesce函数简介

hashbytes函数功能为:返回一个字符,
通过 MD2、MD4、MD5、SHA、SHA1、SHA2_256、SHA2_512方式加密后的返回值

coalesce 系统函数,比ISNULL更强大,更方便的系统函数,
coalesce可以接收多个参数,返回最左边不为NULL的参数,当所有参数都为空时,则返回NULL
coalesce是最优isnull写法解决方案
以前我们使用isnull对两列或多列数据进行为空返回时候,需要多次使用isnull函数
—————————————————————————-
例:
declare @a varchar(10),@b varchar(10),@c varchar(10)
当@a为null时,我们查看@b是否为NULL,不为null,则返回@b ,否则查看@c 不为NULL,则返回@c ,否则返回NULL

hashbytes(‘参数1’,’参数2’)

select isnull(@a,isnull(@b,isnull(@c,null)))
/*当需判断的参数越多时,我们的函数表达式就会变的异常复杂*/

参数1:
输入加密类型 例:MD5
参数2:
输入待加密的字符串(加密字符串最大值为 8000字节)
返回值:
返回值最大为8000字节
注意事项:
当输入加密类型,异常时,返回NULL

但我们使用coalesce函数,会使此 表达式变的优美,通俗易懂
select coalesce(@a,@b,@c)
——————————————————————————–

二、mssql sql hashbytes 举例应用


例1:

二、coalesce 应用举例

   DECLARE @info nvarchar(4000);  
SET @info = CONVERT(nvarchar(4000),'www.maomao365.com');  
SELECT HASHBYTES('SHA1', @info);   ---返回采用SHA1加密
SELECT HASHBYTES('MD5', @info);    ---返回采用MD5加密
SELECT HASHBYTES('MD2', @info);    ---返回采用MD2加密

 

例2:

  declare @a varchar(10),@b varchar(10),@c varchar(10),@d int 

 select coalesce(@a,@b,@c)

 set @a ='g'
 select coalesce(@a,@b,@c)

 set @a =null 
 set @b ='g2'
 set @c ='g3'
 select coalesce(@a,@b,@c)

 set @a =null
 set @b =null
 set @c =null 
 set @d =100

 select coalesce(@a,@b,@c,@d)

 

 

     create table A(info1 varchar(30))

insert into A (info1)values('www.maomao365.com')
insert into A (info1)values('猫猫小屋')
insert into A (info1)values('mssql教程专用')
insert into A (info1)values('mssql函数用法简介') 

select HASHBYTES('Md5',info1) as [md5加密], 
HASHBYTES('SHA1',info1) as [SHA1加密],
info1 from A 

truncate table A
drop table A 

 

本文由澳门太阳娱乐集团官网发布于数据库,转载请注明出处:MSSQL Sql加密函数 hashbytes 用法简介

上一篇:没有了 下一篇:【手记】sql报“聚合或其余set操作化解了null值”
猜你喜欢
热门排行
精彩图文