是不是因为空格问题,按下面的写,然后试一下:
if trim(PasswordEdit.Text)=trim(FieldByName('Password').asstring) then

解决方案 »

  1.   

    to shuangsa(双萨):
      不能使用trim()函数,应为这样会提示“无效的类型转换”
      

  2.   

    FieldByName('Password').Value:
    PASSWORD的字段类型是不是 字符型,如果是肯定报错的啦!
      

  3.   

    哦,我疏忽了,对不起,shuangsa是对的。
    那么我还有一个问题就是,我在数据库中定义的“password”字段为‘文本’类型,
    为什么使用Trim(FieldByName('Password').Value)报错
    而使用Trim(FieldByName('Password').asstring)就没有问题
      

  4.   

    我刚刚写错了而是:如果不是字符型则报错。只用=号的两边为同一种类型才可成立的。知道吗?
    但如果你的TEXT的字段长库超出STRING型的最大长库,这样写也会出错的,现在由于PASSWORD没有超长,所以不会报错的。
      

  5.   

    我觉得是空格的问题,因为数据库里的字符类型值给一个字符变量是这样的
    比如你数据库里的字符字段长度是8;
    数据库里的字段植'11'
    那么给到字符串STR就是‘11’+六个空格
    这个我可以肯定的
      

  6.   

    首先要看一下数据库里的字段的类型,然后把这句话改一下吧!
    if PasswordEdit.Text:=FieldByName('Password').asstring then
    这样应该可以的吧!
      

  7.   

    用varisnull(变量)判断即可如果判断不为空用
    not varisnull()