我的数据库的用户表里的密码被md5了,也就是加密了,我现在想用delphi读出怎么读

解决方案 »

  1.   

    md5加密是不可逆的,读取按照正常的sql搜索即可。
      

  2.   

    可是不可以阿,我试了
    我这么写的select yhm,kl,yhid from ryxx where yhm='anquan' and kl='000000',在数据库里根本找不到记录。明明记录是在的,是不是kl需要转换一下,才可以用
      

  3.   

    建议不要用这种Sql方法验证密码。按照你这yhm应该是唯一的,可以这样:
    select yhm,kl,yhid from ryxx where yhm='anquan'。搜索后再比较密码是否正确。
    if MD5String(edtPwd.Text)) <> AdoQuery1.FieldByName('kl').AsString then
      ShowMessag('密码错误').//edtPwd.Text就是你的语句中输入的kl='000000',比较以前要对它进行md5加密。
      

  4.   

    sorry这句应该是:
    MD5Print(MD5String(edtPwd.Text))
      

  5.   

    那只有这个办法嘛,不能把edtPwd.Text转换成md5写到sql语句里吗
      

  6.   

    不行啊,我用你的方法加密出来的是32位,而数据库里用的是asp加密出来的16位,怎么办啊
      

  7.   

    用16位MD5加密的delphi代码http://www.delphibbs.com/delphibbs/dispq.asp?lid=1836786