sql server 数据加密 如何用sql server中的函数为数据加密?比如:例子表:f1 f2123456789 25f9e794323b453885f5181f1b624d0b之后我在查询的时候调用那个方法,可以把f1加密成f2 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 use Tempdbgoif object_ID ( 'fn_ACITEncryption' ) is not null drop function fn_ACITEncryptiongocreate function fn_ACITEncryption( @Str nvarchar ( 4000), -- 加密的字符串 @Flag bit = 1, --1 、加密 0 、解密 @Key nvarchar ( 50) -- 密文)returns nvarchar ( 4000) -- 這里可轉換成二進制with EncryptionasbeginDeclare @LenStr int , @i int , @Str2 nvarchar ( 4000), @Split nvarchar ( 2), @LenKey intselect @Str= @Str+ 'A' , @LenStr= len ( @Str), @i= 1, @Str2= '' , @LenKey= Len ( @Key+ 'A' )- 1while @i< @LenStr select @Split= substring ( @Str, @i, 1), @Split= nchar (( unicode ( @Split)+ case @Flag when 1 then unicode ( substring ( @Key+ 'A' , @i% @LenKey+ 1, 1))- 1 when 0 then 65535- unicode ( substring ( @Key+ 'A' , @i% @LenKey+ 1, 1)) else 0 end )% 65535+ cast ( @Flag as int )), @Str2= @Str2+ @Split, @i= @i+ 1return @Str2 endgoselect dbo. fn_ACITEncryption( N'Roy' , 1, '123' ) as 加密后字符串 /*加密后字符串------------------------------(1 個資料列受到影響 ) */select dbo. fn_ACITEncryption( N, 0, '123' ) as 解密后字符串/*解密后字符串--------------------------Roy (1 個資料列受到影響 )*/ 不知道我这样说对不对啊,是这样的:比如:select * from talbes where username=函数(‘admin’)数据库里的username存的是:25f9e794323b453885f5181f1b624d0b而不是admin我该怎么查? 查询的方法就是你写的:select * from talbes where username=函数('admin')这里关键是写函数!这个函数需要一段加密算法!加密算法,有简单的,也有难的!看你自己的需求,选择合适的加密算法,自己写一个就好了...大部分加密算法的原理都是相当简单的 sql2005数据加密http://topic.csdn.net/u/20100502/20/c69df313-cd51-4801-8ff4-e8ab48f62d25.html?63821 选出某字段中出现若干次“.”的记录 如何在View中生成结果 SQL里datatime数据类型读出来怎么在VC++下面使用 附加数据库出现问题.求助各位 送100分,客户端软件不安装mssql2000,需要mssql2000那些文件?要写注册表吗? 查询速度太慢,求教优化方法 请推荐本MYSQL入门的书 SQL2000重新安装 疑难问题 奇怪的现象,逻辑思维强的进来帮帮!! 产生随机时间 SQL left outer join的问题。 用一个查询结果,去二次模糊查询
查询的方法就是你写的:
select * from talbes where username=函数('admin')这里关键是写函数!这个函数需要一段加密算法!加密算法,有简单的,也有难的!看你自己的需求,选择合适的加密算法,自己写一个就好了...大部分加密算法的原理都是相当简单的
http://topic.csdn.net/u/20100502/20/c69df313-cd51-4801-8ff4-e8ab48f62d25.html?63821