大家帮忙看看了
代码如下:
 sql.Add('update admin_tab set password='''+new_password+''' where (adminno='''+vloginzhh+''') and (admin_name='''+vloginname+''')');数据库为access,用ado面板中的组件

解决方案 »

  1.   

    sql.Add前clear了没?可能是原来的SQL在里面没清除。
    你可以在execute前把SQL显示出来看看。
      

  2.   

    sql.Add('update admin_tab set password='''+new_password+''' where adminno='''+vloginzhh+''' and admin_name='''+vloginname+'''');
      

  3.   

    sql.text:='update admin_tab set password='''+new_password+''' where adminno='''+vloginzhh+''' and admin_name='''+vloginname+'''';
      

  4.   

    试试
     sql.Add('update admin_tab set password="'+new_password+'" where (adminno="'+vloginzhh+"') and (admin_name="'+vloginname+'")');
      

  5.   

    password是delphi的关键字,不能做为数据库的字段名!
      

  6.   

    sql.Add('update admin_tab set [password]="'+new_password+'" where (adminno="'+vloginzhh+"') and (admin_name="'+vloginname+'")');
      

  7.   

    来晚了!password虽说是关键字,不过你可以加上[]的!
      

  8.   

    改个错:
    sql.Add('update admin_tab set [password]='''+new_password+''' where (adminno='''+vloginzhh+''') and (admin_name='''+vloginname+''')');
    ^_^
      

  9.   

    query.close;
    query.sql.clear;
    query.sql.Add('update admin_tab set [password]=:a where adminno=:b and admin_name=:c');
    adoquery.Parameters.ParamByName('a').Value:=new_password;
    adoquery.Parameters.ParamByName('b').Value:=vloginzhh;
    adoquery.Parameters.ParamByName('c').Value:=vloginname;
    你试试这个吧
      

  10.   

    adoquery.close;
    adoquery.sql.clear;
    adoquery.sql.Add('update admin_tab set [password]=:a where adminno=:b and admin_name=:c');
    adoquery.Parameters.ParamByName('a').Value:=new_password;
    adoquery.Parameters.ParamByName('b').Value:=vloginzhh;
    adoquery.Parameters.ParamByName('c').Value:=vloginname;
    adoquery.execute