- 关 键 词:
- 数据库
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专题:http://www.qqread.com/pb/s102952700.html
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 在PB中如何实现数据模糊查询 (1300次浏览)
- 用PB开发多媒体数据库管理系统 (700次浏览)
- PB8.0应用程序编译发布技术研究 (661次浏览)
- 如何发布独立的POWERBUILDER应用 (638次浏览)
- 用Powerbuilder开发WEB数据库 (578次浏览)
- 低级键盘钩子屏蔽Win键、Alt+Tab键的响应 (511次浏览)
- 浅谈PB中动态DataWindow的技术应用 (511次浏览)
- 用PB做一个通用右键菜单 (503次浏览)
- PowerBuilder应用开发系列讲座(9) (489次浏览)
- 怎样在pb中得到存储过程的值 (447次浏览)



