sql 字段加密函数

-- 以下演示ip地址加密,ip字段类型为binary
select   *   from  xl_whitelist
delete  xl_whitelist

insert   into  xl_whitelist (ip)  values ( cast ( ' lijian '   as   binary ( 50 )))
select   cast (ip  as   char ( 50 ))  from  xl_whitelist 

 

pwdencrypt:pwdencrypt实现对输入数据进行加密后返回二进制形式的加密内容

pwdcompare:pwdcompare 用于检查明文是否与加密的二进制数据内容相等,没有解密函数。

这是二个SQLServer未公开的函数,主要是用于SQLServer内部自己调用。优点是调用方便,缺点是这二个函数没有公开,就意味着可能改变,并且不兼容原来的,在使用上存在风险。(只在sqlserver验证了一下)

create table #temptable(iorder int, pswd varbinary(1024) )

go

insert into #temptable values(1, pwdencrypt('yang'))

insert into #temptable values(2, pwdencrypt('lian'))

insert into #temptable values(3, pwdencrypt('shan'))

go

select * from #temptable

go

-- 比较数据是否相等

select * from #temptable

where pwdcompare('lian', pswd)=1

go

drop table #temptable

go

你可能感兴趣的:(sql)