insert into是sql语句
addnew是ado中的method

解决方案 »

  1.   

    insert into是sql语句 ,和select 一样
    而 addnew是ado对象中的一个方法,
    俩者不是同一概念。
      

  2.   

    谢谢!
    我是在VB中用这两种办法添加数据的,
    但在添加数据时,觉得有区别,速度好象"insert into"要快,但是如果是有几千条数据循环添加时,"insert into "有时会出错,但"addnew" 就不会,为什么会是这样呢?
      

  3.   

    如果多条数据添加,"insert into"添加数据时比"addnew"要快多了.
      

  4.   

    问一下 addnew是怎么用的啊?
      

  5.   

    定义一ado.recordset,就可以用addnew方法了
      

  6.   

    "insert into "添加多数据时,当添加到两三千条时,有时就会出现"主键"不能重复的错误,有时又不会出错.这是怎么回事?
      

  7.   

    VB本身的机制决定了在使用一些控件的时候会出现一些莫名奇妙的错误,比如DataGrid控件,当你向数据库添加一条数据时,在这个控件上会显示出你刚才所添加的东西,但你用查询的时候,却查不出此条数据,原因就是数据没有真正的写进数据库中,而是放在了绶存中,当关闭DataGrid控件所在的窗体,再重新打动此窗体,再查询此条记录,可以查到。
    insert和addnew这两个的区别,上述同仁已经说得十分清楚,我建议在VB中使用addnew,因为它是VB的控件方法,insert是sql语句的,多少会有些不兼容。
      

  8.   

    出错可不能怪vb呀!你说的主键重复的错误是因为你添加了重复主键的记录,这与是否用addnew没有关系的。你不信把数据库中主键去了,看还报不报错。
    你发几贴来问这个问题,我认为原因可能是你在循环中执行insert into,循环多少次就执行多少次,那肯定要比addnew要慢了。一般比较二者是指对一条记录而言。(insert into这条语句可以一次增加多条语句的。)每执行一次,数据库就要判断一次语法,当然慢了。可是addnew就不会了。你可以把代码贴出来。