首先设两个窗口Form1和form2
在form1设
Public rs  As New Recordset
Call sql2005
ttt = "select * from xxx"
rs.Open ttt, conn, 1, 3
然后在Form1弹出form2conn.Close'关闭数据库要解决的问题,form2关闭数据库后form1的rs也同时关闭了
form1如何重新声明全局变量的rs???

解决方案 »

  1.   

    你同用一个conn打开数据库,关闭conn,当然所有用conn打开的记录集就全关闭了,与rs无关。可以考虑定义多个连接。或把form1里的rs做成无连接Recordset。参考:
    http://blog.csdn.net/chinaboyzyq/archive/2010/03/27/5422713.aspx
      

  2.   

    把Public rs  As New Recordset放在模块(module)文件里。
      

  3.   

    不要用Public 声明rs ,可以用它声明连接Cn。记录集可以随时生命随时使用随时关闭,连接可以一直用下去
      

  4.   


    你同用一个conn打开数据库,关闭conn,当然所有用conn打开的记录集就全关闭了,与rs无关。可以考虑定义多个连接。或把form1里的rs做成无连接Recordset。顶这个建议楼主再建个CONN1试试
      

  5.   

    这个要看lz的具体应用来定,如果用数据绑定的方式,conn应该进入时连接,一直到退出时关闭如果用付值的方式,也可以象上面的做法,但最好是即用即开,用完则关一般建议用付值的方式,这样不依赖网络