读书人

求教!VFP 9.0 sp2中CHRTRAN函数的转换

发布时间: 2013-06-19 10:26:41 作者: rapoo

求教!VFP 9.0 sp2中CHRTRAN函数的转换问题
变量body为一组字符集,如:"1234567890abcdefg......" 约有200个字符组成
变量rabb为body向反排列的字符集".....gfedcba0987654321" 约有200个字符组成

然后我做了如下操作
abc1=CHRTRAN("国际域名",body,rabb)
abc2=CHRTRAN("域名",body,rabb)
? abc1
? abc2

*显示结果为:
褛F &&为abc1值
&&为abc2值

问题是abc1最后四位字符应该和abc2值一样,但我这里显示去不一样,不知道是什么问题产生的.

另外在把abc1,abc2等类似用CHRTRAN转换过的字符放到sql 2005的select查询上后,有些字符在转递到sql后LIKE操作变成了where XXXX LIKE '%n隈A?',少了一个%操作符,正确的应该是 where XXXX LIKE '%n隈A?%',不知道为什么,求高手解答!

[解决办法]
<木瓜的MyFll.fll(1.187.10.803)及说明>
http://www.access911.net/CSDN/FileDescription.asp?mdb=2012-11-10&id=10
<木瓜的MyFll.fll(1.182.10.526)及说明>
http://download.csdn.net/source/2505656

[解决办法]
要是加密后,还能看出来cStr1的内容与cStr2的内容有相同,那加密就没有意义了,就可以容易解密了,或者说就不能加密码了。
应该解密后再比对。
[解决办法]
应该是这样吧:
存储时:将数据加密后存储。
查询时:将输入的数据加密后再与存储的数据对比,或者将存储的数据解密后与输入的未加密的数据对比。

我的操作员密码是这样:
存储时:将数据加密后存储。
对比操作员密码时,用视图将所有操作员取到本地为临时表,然后选择或输入操作员(这里操作员临时表定位到对应的操作员了),最后将输入的密码加密后与表中原来加密后存储的密码进行比对。
[解决办法]

引用:

Quote: 引用:

要是加密后,还能看出来cStr1的内容与cStr2的内容有相同,那加密就没有意义了,就可以容易解密了,或者说就不能加密码了。
应该解密后再比对。


这样的话加密后的数据查询就麻烦了,因为用户输入的字符肯定与加密后的数据不一样

想知道高手们怎么查询加密后的数据资料

 肯定先解密才能查询,一般是先将此字段COPY到服务器的临时表中,再用
程序(代码)解密,(在原来做工资系统时,有1个DECDBF.EXE、SECDBF.EXE文件
专门加、解密,解密)
你的数据有几百万,这个方法不适用。

[解决办法]
你的表放SQLSERVER2005上?你可以将要加密的数据单独放在1个表中,
通过ID连接查询,可以设置此表的访问权限。

读书人网 >VFP

热点推荐