SQL.add('insert into '+tablename+' ('+wordname+') values ('+paraname+')');

解决方案 »

  1.   

    with MyAdo1 do
    begin
      close;
      SQL.Clear;                
      SQL.add('insert into'+tablename+' ('+wordname+') values('+#39+paraname+#39+')');
    //sql.add('insert into 法律大类 ('+str1+') values('+#39+str2+#39+')');
      ExecSQL;
    end;SQL语句,是一个文本语言。它头尾只用一个单引号;
    它引用数据都要转换成字符,对于具体数据都要变换成字符串形式,所以头尾要加入单引号。
    字符串中的单引号,Pascal语言是通过两个单引号表示。
    对于引用变量,(1)变量应是字符串类型,(2)变量要头尾要使用单引号。
    注意:引用也可以使用#39,它就是一个单引号。你的错误:
    1、SQL语句使头尾用了3个引号;
    2、引用数据没有使用单引号;
    所以,你的SQL应修改为:
      SQL.add('insert into'+tablename+' ('+wordname+') values('+#39+paraname+#39+')');
    //sql.add('insert into 法律大类 ('+str1+') values('+#39+str2+#39+')');