准备将edit中的内容存入数据库stuinfo表if query.active then query.close;
query.sql.clear;
query.sql.add('insert stuinfo(id,name) values(':id',':name')');
query.parameters.parmabyname('id').value:=trim(edit1.text);
query.parameters.parmabyname('name').value:=trim(edit2.text);
try
query.execsql;
finally
query.close;
为啥通不过,出了语法错误,

解决方案 »

  1.   

    if query.active then query.close;
    query.sql.clear;
    query.sql.add('insert stuinfo(id,name) values(':id',':name')');
    query.parameters.parmabyname('id').value:=trim(edit1.text);
    query.parameters.parmabyname('name').value:=trim(edit2.text);
    try
    showmessage(quwry.sql.text);//看看
    query.execsql;
    finally
    query.close;
    为啥通不过,出了语法错误,
      

  2.   

    query.sql.add('insert stuinfo(id,name) values(:id,:name)');
      

  3.   

    query.sql.add('insert stuinfo(id,name) values(':id',':name')');
    首先看这吧,注意空格问题,而且SQL语句是一个字符串,
    query.sql.add('insert stuinfo (id,name) values (:id,:name)');
    还有一点就是ID的类型的问题,是否是字符型//当然这个可能性比较小,因为自己设定的。
    如果表中设定的类型是INT的话,那么你要StrToInt(Trim(Edit1.Text));
      

  4.   

    改了
    query.sql.add('insert into stuinfo(id,name) values(:id,:name)');
    还不行
    insert into 语法错误
      

  5.   

    insert into stuinfo ([id],[name]) values( :id,:name)
      

  6.   

    insert into stuinfo(id,name) 有问题 如果此表只有两个字段的话去掉括号,如果字段更多就
    insert into stuinfo ([id],[name]) values( :id,:name)
      

  7.   

    加 into 再按照 hsmserver(撒哈拉之雨的悲伤) 说的做应该就可以了
      

  8.   

    query.sql.add('insert into stuinfo (ID,NAME) values ('#39'007'#39','#39'邦德'#39')');
      

  9.   

    query.sql.add('insert stuinfo(id,name) values(':id',':name')');
    加上into,然后把':id',':name'的单引号去掉
    query.sql.add('insert into stuinfo(id,name) values(:id,:name)');
    如果只有2个字段,还可以
    query.sql.add('insert into stuinfo values(:id,:name)');