现在我在添加数据的时侯能在datagrid中出现,不过不知道为什么添加一个数据是当时侯不能出现刚添加的数据,这个数据在添加第二个数据时才会在datagrid中出现,是不是我代码的次序有问题,我调了好久, 还是想不出啊,大家帮我看看啊!
If modify = True Then
   Data1.Recordset.AddNew
   Data1.Recordset.Fields("姓名") = Trim(Text1.Text)
   Data1.Recordset.Fields("性别") = Trim(Text2.Text)
   Data1.Recordset.Fields("手机") = Trim(Text4.Text)
   Data1.Recordset.Fields("qq号码") = Trim(Text3.Text)
   Data1.Recordset.Fields("家电") = Trim(Text5.Text)
   Data1.Recordset.Fields("地址") = Trim(Text6.Text)
   Data1.Recordset.Fields("生日") = frmmain.DTPicker1.Value
   Data1.Recordset.Update
   Data1.Refresh
   Set db = New adodb.Connection
   Set rs = New adodb.Recordset
   db.ConnectionString = "dsn=朋友"
   db.Open
   rs.Open "friends", db, 3, 4
   Set Form2.DataGrid1.DataSource = rs
   rs.Requery
   Form2.DataGrid1.Refresh
   Form2.Data2.Refresh
   Unload Me
   end if

解决方案 »

  1.   

    假如你的 command1 按钮用于实现这个添加功能,
    你可以在添加完数据后,加上一个重新显示数据的内容!
    -------------------------------------------------------
    换一种说法:
    思想是这样的:
    添加按钮_click()
    向数据库中添加数据项;
    添加成功;
    查询数据并显示到 datagrid 中。因为你每次的查询是在数据插入之后进行的,
    也就是说,在你查询的结果之中包含你刚刚插入的数据。
    思想就是这样,你可以根据自己的程序进行编码!
      

  2.   

    谢谢大家对我的指点!特别是zeq258!现在成功了,这个问题我自己想了好久,然后我想应该是代码的次序问题,然后我把那些打开数据库的代码放到unload me 后面,竟然行了!我想应该是当时打开的数据库还不是已经添加后的,还和以前没有添加的一样,放到unload me 后了就应该是添加后的,不知道我想的对不对?总之谢谢大家!
      

  3.   

    db.ConnectionString = "dsn=朋友"
    好象是这里的问题 连接字符串一大排呢