Insert.ADOQuery1.Close;
Insert.ADOQuery1.SQL.Clear;
insert.ADOQuery1.SQL.Add('Insert into cdda_table values(,"'+edit1.text+'","'+combobox1.text+'","'+edit2.text+'","'+edit3.text+'","'+edit4.text+'",5,"'+edit5.text+'","'+edit6.text+'")');
insert.ADOQuery1.ExecSQL;
为什么却插不进去呢?
为什么呢?望指明!谢谢!给分~

解决方案 »

  1.   

    用单引号'
    insert.ADOQuery1.SQL.Add('Insert into cdda_table values(,'''+edit1.text+''','''+combobox1.text+''','''+edit2.text+''','''+edit3.text+''','''+edit4.text+''',5,'''+edit5.text+''','''+edit6.text+''')');
      

  2.   

    自动编号的,如果是通过触发器来控制,在插入时不需要管,但插入时必须在'Insert into cdda_table 后写上具体的字段名,不包括自动编号的字段。
      三个单引号,其中一个单引号是引起一个字符串,另外两个代表一个单引号。若想单独表示一个单引号字符,就要有四个单引号了,如'''',你的应该写成。
      insert.ADOQuery1.SQL.Add('Insert into cdda_table(在此列出你的字段,不包括自动编号的) values('''+edit1.text+''','''+combobox1.text+''','''+edit2.text+''','''+edit3.text+''','''+edit4.text+''',5,'''+edit5.text+''','''+edit6.text+''')');
      

  3.   

    delphi中的SQL没有象微软那样,虽然是标准的SQL语言,但是没有双引号,所以只能用两个''来代替!