procedure TForm2.Button2Click(Sender: TObject);
begin
   if adoquery1.fieldbyname('User_name').AsString=Edit5.Text then
     begin
     ShowMessage('该用户已存在!');
     end
   else if (Edit5.Text='')and(Edit6.Text='') then
        adoquery1.Close;
        adoquery1.SQL.Clear;
        adoquery1.SQL.Add('insert into User_password(User_name,User_password) values('''+Edit5.Text+''','''+Edit6.Text+''') ');
        adoquery1.ExecSQL;
        ShowMessage('添加用户成功!');
end;
   
错误是adoquery1:field'User_name' not found.
小弟第一次发帖,请指教

解决方案 »

  1.   

    field'User_name' not found. 很明显,没这个字段,这就只有你自己查了,看看adoquery1的sql是否选出这个字段了
      

  2.   

    adoquery1:field'User_name' not found. 错误提示已经很明确了,是ado中user_name字段没有;
    查看数据库是否有user_name;
      

  3.   

    if (Edit5.Text='')and(Edit6.Text='') then这后面是不是应该有个
    begin
    end;执行后,要重新用adoquery1查询一遍数据,如果你用adoquery1绑定到表格控件,就需要用一个新的adoquery来执行insert部分的语句。
      

  4.   

    严重同意啊三说的。  BEGIN
                      END
    然后,最好再用一个ADOQUERY控件
      

  5.   

    找不到字段要自己查一下了,ADOquery是否已经打开?
    插入数据可以用AdoCommand,效率会高一些
      

  6.   


    我加了begin end,还是同样的错误,但是数据库中确实是有User_name这个属性的,为什么却找不到?
      

  7.   

    测试下这个
           adoquery1.Close; 
           adoquery1.SQL.Clear; 
           adoquery1.SQL.Add('select User_name from User_password');
           adoquery1.Open; 
      

  8.   

    我在if 前面加了个这个
    adoquery1.Close; 
          adoquery1.SQL.Clear; 
          adoquery1.SQL.Add('select User_name from User_password'); 
          adoquery1.Open; 
    可以运行了。正如3楼所说的。小弟还想请问各位大侠,如何在delphi中自动显示视屏的大小。我做了一个视屏的,但是 太小了,但是不知道如何改,谢谢