大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 数据库 -> 其他相关 -> 如何实现对数据库单个字段进行加密

如何实现对数据库单个字段进行加密

时间: 2021-08-13 作者:daque

create view v_rand as select c=unicode(cast(round(rand()*255,0) as tinyint)) go   create function f_jmstr(@str varchar(8000),@type bit)returns varchar(8000) /* *参数证明 *str:要加密的字符串或仍旧加密后的字符 *type:操纵典型--0加密--解密 *归来值证明 *当操纵典型为加密时(type--0):归来为加密后的str,即寄存于数据库中的字符串 *当操纵典型为解密时(type--1):归来为本质字符串,即加密字符串解密后的从来字符串 */ as begin          declare @re varchar(8000)--归来值          declare @c int--加密字符          declare @i int /* *加密本领为原字符异或一个随机ascii字符 */     if @type=0--加密     begin                    select @c=c,@re=’’,@i=len(@str) from v_rand                    while @i>0                        select @re=nchar(unicode(substring(@str,@i,1))^@c^@i)+@re                                      ,@i=@i-1                    set @re=@re+nchar(@c)     end     else--解密     begin                    select @i=len(@str)-1,@c=unicode(substring(@str,@i+1,1)),@re=’’                    while @i>0                             select @re=nchar(unicode(substring(@str,@i,1))^@c^@i)+@re ,@i=@i-1          end          return(@re) end go   --尝试 declare @tempstr varchar(20) set @tempstr=’  1 2   3aa’ select dbo.f_jmstr(dbo.f_jmstr(@tempstr,0),1) 输入截止   1 2   3aa

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.