cont.sql.text:='insert into tab ('a','b','c')';
编译通不过,改成"a"可以,但并没有插入到表tab中

解决方案 »

  1.   

    若你的A,B,C分别是你定义的三个字符类型的变量,并且数据库里的对应字段的类型分别是A,B字符型C,数字型那么写法是
    cont.sql.text:='insert into tab ('''+a+''','''+b+''','+c+')';
    若A,B,C分别是你写的三个东西.并且数据库里的对应字段的类型分别是A,B字符型C,数字型那么写法是:
    cont.sql.text:='insert into tab (''a'',''b'',c)';
    注意单引号的个数
      

  2.   

    A(文本类型) B(数字)
    记录  china       13
    想插入一条,insert into tab ( "china" , 13 )
    可是不行呀
      

  3.   

    如果你的tab表中的字段刚对应好了.并且需要填写的字段只有这两个.那么应该是可以的.不如你试试这个语句:
    insert into tab (A,B) values (''china'',13)
    注意是两个单引号,而不是双引号
      

  4.   

    我的表的名称是product,其中字段的名称是“产品编号”,“产品名称”,比如说我要插入上述两个字段的字符是“001”,“网络分析仪”,我的product这个表用的SQL的控键的名称是qy_product,我该如何编写这个插入语句?
      

  5.   

    with ADOQuery do
    begin
      Close;
      SQL.Clear;
      SQL.Add('INSERT INTO product([产品编号],[产品名称]) VALUES(' + QuotedStr(edit1.text) + ',' + QuotedStr(edit2.text) + ')');
      SQL.Add('INSERT INTO product([产品编号],[产品名称]) VALUES(''001'',''网络分析仪'')');  //001前的两个单引号表显一个引号
      try
        ExecSQL;
      Except
        on e:exception do
          showmessage(e.Message);
      end;
    end;
      

  6.   

    上句中的ADD语句为二选一,按照你的要求来决定
      

  7.   

    大哥 insert into在表的后面要有values的