var
  BaseId : integer;
  aa : string;这句一直提示语法错误:
adoquery1.SQL.Text := 'insert into baselist (note) values ('+''''+aa+''''+')';  //数据库中note定义为文本
这名没事,并且数据写入数据库:
adoquery1.SQL.Text := 'insert into baselist (Baseid) values ('+inttostr(baseid)+')';//数据库中Baseid定义为数字为什么,错在哪里?

解决方案 »

  1.   

    adoquery1.SQL.Text := 'insert into baselist (note) values ('+QuotedStr(aa)+')'; //数据库中note定义为文本
      

  2.   

    提示为:
          insert into语句的语法错误。
      

  3.   

    adoquery1.SQL.Text := 'insert into baselist (note) values '''+aa+''' '; //数据库中note定义为文本
      

  4.   

    adoquery1.SQL.Text := 'insert into baselist (note) values ('''+aa+''') '; //数据库中note定义为文本
      

  5.   

    在 adoquery1.SQL.Text :=......   这里下个断点,程序跑到这里后,将Text中的值拷贝出来放到数据库中直接执行看有没有问题
      

  6.   

    建议用取别名的方式。。或用quotedstr()。。 检查也方便..
      

  7.   

    note 字段是什么类型的?要确认
      

  8.   

    adoquery1.SQL.Text := 'insert into baselist (note) values (:note)';
    adoquery1.parameters.parambyname('note').value := aa;