Query1.close;
Query1.sql.clear
query1.sql.add('select dept from password where usename='+edit1.text+ 
            ' and usepass='+edit2.text)
       //这里提示,usename列无效,我把usename 设为主键了
Query1.open;
 if Query1.fieldbyname['dept'].values<>'' then
 begin
    UseName:=Query1.fieldbyname['dept'].values;//出现EAbstractError
    showmessage(UseName);    // aa
    if UseName='aa' then      //这里判断是不相等     .......
  我写得有些乱,到包含!!!

解决方案 »

  1.   

    query1.sql.add('select dept from password where usename='''+edit1.text+ 
                ''' and usepass='''+edit2.text+''''+';');
      

  2.   

    你的表中确实有usename字段吗?再看一下你的query1是否连接到你的password表所在的数据库。
      

  3.   

    Sql于具有问题我已经改过来了,但是,提示发生异常,‘EAbstractError‘不知道是什么原因,
    如果我输入的信息不正确呢?他会出发一个异常,
    如果加上下面的代码:
      Try
       Queryt1.open
      finally
       begin
         Edit1.text:='';
         Edit2.text:='';
         showmessage('密码和用户名不正确!');//我输入正确的密码和用户名,showmessage()
                                              //同样被触发,我真的不知道该怎么做了。
       end;  
      

  4.   

    不管怎么样,应该这样写:query1.sql.add('select dept from password where usename='#39+edit1.text+ 
                #39' and usepass='#39+edit2.text+#39)
      

  5.   

    如果输入的信息不正确呢?该怎么样解决呢?sql语句还是要执行的,必定有错误,我嘎怎么做〉
      

  6.   


    query1.sql.add('select dept from password where usename='+''''+edit1.text+'''' +'and usepass='+''''+edit2.text+'''')
    其中''''可能是三个或二个'自已试哈