我这样写是错的,编译都通不过,但就是不知道该如何来写.....ADOQuery1.SQL.Add('Insert into tabName (Sid,Name) values(:Sid,:Name)');
ADOquery1.params.paramvalue['Sid']:=Edit1.text;
ADOquery1.params.paramvalue['Name']:=Edit2.text;ADOquery1 好像没有params属性.各位大哥,请问该如何来写呢??谢谢...

解决方案 »

  1.   

    试试adoquery1.parameters.parambyname('Sid).value:=edit1.text;
      

  2.   

    ADOQuery1.SQL.Add('Insert into tabName (Sid,Name) values('''+Edit1.text+''','''+Edit2.text+'''');
      

  3.   

    从来不在别人的帖子里up,现在up了一下感觉很不自然,那就告诉你还是用huojiehai(海天子) 的方法,因为用adoquery1.parameters.parambyname('Sid).value:=edit1.text;当edit1.text=''时就会又异常发生了,当然这时候你也可以用adoquery1.Parameters.ParamValues['sid'] := edit1.text.
      

  4.   

    应该是:
    adoquery1.parameters.parambyname('Sid').value:=
      

  5.   

    谢谢代码工人的回答,"因为用adoquery1.parameters.parambyname('Sid).value:=edit1.text;当edit1.text=''时就会又异常发生了"我试了一下,并没有发生异常.字段'Sid'没不是主键,我的主键是自动生成的,呵呵...还是谢谢你.
      

  6.   

    啊!adoquery1.parameters.parambyname('Sid').value:=edit1.text;当edit1.text=''时就会又异常发生了这是很多人困饶的一个问题,你那里却没有问题.搞不懂了,我并非指的主键,可空字段也是这个样子。你用的什么数据库.
      

  7.   

    adoquery1.parameters.parambyname('Sid').value是olevariant型,而adoquery1.Parameters.ParamValues['sid'] 是variant型,为了避免这个问题,我是常用下面这种方法,难道与操作系统有关吗.
      

  8.   

    是不是与ole provider有关,能把你的编程环境告诉我吗
      

  9.   

    直接构造查询语句比较好,易调试和维护strSQL := 'insert tablename (f1,f2...) values(v1,v2...)';adoQuery.sql.clear;
    adoQuery.sql.add(strSQL);
    adoQuery.execute;—————————————————————————————————
    ┏━★━━◆━━★━┓ 
    ♂欢|◢CSDN◣|使♂        ▲自由保存帖子,浏览,关注检测
    ┃迎|◥论坛助手◤|用┃        ▲完善的CSDN客户端工具
    ┗━☆━━◇━━━☆┛       ▲自动添加签名......让你更快,更爽,更方便地上CSDN...
    http://www.csdn.net/expert/topic/573/573604.xml
    http://www.chinaok.net/csdn/csdn.zip
      

  10.   

    试试adoquery1.parambyname('Sid').AsString:=edit1.text;
      

  11.   

    楼上的,ado没有asstring的。那是bde的。
    楼主跑那里去了?