当前位置:编程学习 > VB >>

ACCESS多用户使用出错的问题?

是这样,我有个ACCESS表,表名叫userlogin,字段分别是name,password,login 
就是名字、密码和是否登陆。 
我使用一个form1登陆,名字、密码对就设置login为true,关闭form1,打开form2。 
在form2里加入一个状态栏,提示,用户名、权限和当前在线几人。 
利用一个模块传递用户名、权限 
在form2中打开数据库,设置一个时钟,统计login为true的个数作为人数显示。在unload中为当前登陆用户的login赋值false. 
测试中,打开多个程序,可以实时显示在线人数,但关闭时如果先关后打开的程序,就会出错。 
哪位给个源码学习下呀,不方便源码的,给下解答! --------------------编程问答-------------------- 估计 连接的对象 没有正确的回收 --------------------编程问答-------------------- 给你几个函数,绝对能用 
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
'函数功能:连接指定的数据库 
'参数说明:cnnP:数据库连接对象; 
'        :adoP:数据集存储对象; 
'        :strPath:数据库路径; 
'        :strPassword:数据库密码; 
'返回说明:True:连接成功  False:连接失败 
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
Public Function funConnectDataBase(cnnP As ADODB.Connection, adoP As ADODB.Recordset, ByVal strPath As _ 
    String, ByVal strPassword As String) As Boolean 
On Error GoTo errFunction 
    Set cnnP = New ADODB.Connection 
    Set adoP = New ADODB.Recordset 
    cnnP.Provider = "Microsoft.Jet.OLEDB.4.0" 
    cnnP.Open "Data Source = " & strPath & ";jet oledb:database password=" & strPassword 
    funConnectDataBase = True 
    Exit Function 
errFunction: 
    funConnectDataBase = False 
End Function 
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
'函数功能:关闭数据库连接对象和数据文件的关联 
'参数说明:cnnP:数据库连接对象; 
'        :adoP:数据库存储对象; 
'返回说明:True:关闭连接成功  False:关闭连接失败 
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
Public Function funCloseDataBase(cnnP As ADODB.Connection, adoP As ADODB.Recordset) As Boolean 
On Error GoTo errFunction 
    Set adoP = Nothing 
    Set cnnP = Nothing 
    funCloseDataBase = True 
    Exit Function 
errFunction: 
    funCloseDataBase = False 
End Function 
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
'过程功能:对指定的对象执行指定的SQL语句 
'参数说明:cnnP:ADO连接对象 
'        :adoP:ADO记录集对象 
'        :strSql:SQL语句 
'        :bolQueryRecord:是否是查询记录集 
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Public Sub subExcuteSQL(cnnP As ADODB.Connection, adoP As ADODB.Recordset, strSql As String, bolQueryRecord _ 
    As Boolean) 
    If bolQueryRecord Then  '如果是查询记录集 
        adoP.Open strSql, cnnP, adOpenStatic, adLockBatchOptimistic 
    Else 
        cnnP.Execute strSql 
    End If 
End Sub 
补充:VB ,  资源
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,