懒了点直接请教大家了...哈哈: 
    最近开始用使用ADO连接,可我发现在TADOQuery中使用UPDATE更新ACCESS数据库时报错,但使用SELECT可以,更新SQL数据库也没问题。请大家给个办法或建议。谢谢!

解决方案 »

  1.   

    是哦,贴出代码,SQL余ACCESS的sql语句有点不同的。
      

  2.   

    代码如下:
      with ADOQuery1 do
      begin
       Close;
       Sql.Clear;
       Sql.Add('Update PrinterList Set printername=:tmp1');
       parambyname('tmp').AsString:=FlatComboBox1.text;
       Execsql;
      end;
      

  3.   

    上面的代码错了!应该是如下代码: 
      with ADOQuery1 do 
      begin 
      Close; 
      Sql.Clear; 
      Sql.Add('Update PrinterList Set printername=:tmp1'); 
      Parameters.paramByname('tmp').Value:=FlatComboBox1.text; 
      Execsql; 
      end; 
      

  4.   

    parambyname('tmp').AsString:=QuotedStr(FlatComboBox1.text); 
    printername应该是字符型的吧,要加引号
      

  5.   


    应该不是楼上说的问题吧!是不是TADOQuery或TADOconnection需要设置什么特殊的属性吧??
      

  6.   

     
    Sql.Add('Update PrinterList Set printername=:tmp1'); 
      parambyname('tmp').AsString:=FlatComboBox1.text; 
    这是输入错误?
      

  7.   


    是我在这里输入错误了!实际是这样:
    Sql.Add('Update PrinterList Set printername=:tmp'); 
    Parameters.parambyname('tmp').Value:=FlatComboBox1.text; 
      

  8.   

    1)要给出错误最好
    2)SQL.Add('update ... set printername = '+ QuotedStr(floatComboText1.Text))看看
      

  9.   

    Sql.Add('Update PrinterList Set printername=:tmp1'); 
    用like