投稿或申请专栏请先 [ 登 陆 ] 新版进入 旧版进入
您的位置: 首页>数据库>其他相关>正文
站内搜索
    
最新论文TOP10
·保持共产党员先进性教育心得体会
·工商局2006年度工作计划
·县交通局党委2006年工作计划
·医院工会工作总结
·2005年度医院护理工作总结
·2006年护理工作计划
·2006年度保险公司工作计划
·公路局工会副主任个人工作总结
·公路局助理工程师个人业务工作总
·市地税局1—10月份工作总结
热点论文TOP10

·小学数学论文的撰写
·毕业论文范文
·年度个人述职报告
·毛泽东思想概论心得
·寒假社会调查报告
·开题报告范文
·寒假社会调查报告
·寒假社会实践调查报告
·计算机毕业论文
·述职报告

相关论文TOP10

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

作者:佚名    来源:网络    时间:2005-12-9 10:43:11  浏览:

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
首席范文网版权与免责声明:

 
凡本网注明“来源:范文123网(范文网123)”的所有作品,版权均属于范文123网(范文网123),未经本网授权不得转载、摘编或利用其它方式使用上述作品。已经本网授权使用作品的,应在授权范围内使用,并注明“来源:范文123网”。违反上述声明者,本网将追究其相关法律责任。
凡本网注明“来源:XXX(非范文123网)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。
如因作品内容、版权和其它问题需要同本网联系的,请在30日内进行。