adoquery1.Close;
    adoquery1.SQL.clear;
   adoquery1.sql.add('update book set price='''+trim(price1.text)+'''');
    adoquery1.sql.add(' where book_number='''+trim(dblookupcombobox1.text)+'''');
    adoquery1.ExecSQL;

解决方案 »

  1.   

    adoquery1.sql.add(' where book_number=='''+trim(dblookupcombobox1.text)+'''');
    这句有问题,SQL语句中的等于是一个=,不是==。
      

  2.   

    第一个问题如2楼说的等号问题
    第二个问题是SQL语句中的对字符串的处理,不能加双引号,需要用QuotedStr()函数处理
    adoquery1.sql.add('update book set price='+‘QuotedStr(trim(price1.text))’);
      

  3.   

    学C的职业病标准的SQL语法中,判断只需要一个等号,不是两个
      

  4.   

    var SQL:string;
    begin
      SQL:='update book set price='+#39+Trim(price1.text)+#39+
           ' where book_number=='+#39+Trim(dblookupcombobox1.text)+#39;
      adoquery1.Close;
      adoquery1.SQL.clear;
      adoquery1.sql.add(SQL);
      adoquery1.ExecSQL;SQL语句这样写一般不会出现错误。
      

  5.   

    var SQL:string;
    begin
      SQL:='update book set price='+#39+Trim(price1.text)+#39+
           ' where book_number='+#39+Trim(dblookupcombobox1.text)+#39;
      adoquery1.Close;
      adoquery1.SQL.clear;
      adoquery1.sql.add(SQL);
      adoquery1.ExecSQL;报谦,贴码错误。