数据库文件(Access)放在公司公共文件夹中(网络硬盘),15人左右的访问量,如果数据库已经打开,我是否可以拷贝.mdb文件呢?是否对其他人的访问造成影响,或者经常这样操作是否对数据库有影响?另外数据库的搜索和数据读写都用以下函数,是否有优化的可能呢?感觉速度比较慢(也有一部分是因为数据库是存放在网络硬盘上的原因):
Public Function WIS_Base_Connect(ByVal txtSQL As String) As ADODB.Recordset
On Error GoTo ErrCode
Dim WIS_ConnectName As StringFlag_DB_Con = True
WIS_ConnectName = WIS_Base_DataBaseConnectName & ";"Set WIS_Base_Con = New ADODB.Connection
WIS_Base_Con.Open "provider=microsoft.jet.OLEDB.4.0;data source= " & WIS_ConnectName & ";Jet OLEDB:Database Password = pd"
Set WIS_Base_Rs = New ADODB.Recordset
WIS_Base_Rs.Open txtSQL, WIS_Base_Con, adOpenKeyset, adLockPessimistic
Set WIS_Base_Connect = WIS_Base_Rs
end function
Public Function WIS_Base_Connect(ByVal txtSQL As String) As ADODB.Recordset
On Error GoTo ErrCode
Dim WIS_ConnectName As StringFlag_DB_Con = True
WIS_ConnectName = WIS_Base_DataBaseConnectName & ";"Set WIS_Base_Con = New ADODB.Connection
WIS_Base_Con.Open "provider=microsoft.jet.OLEDB.4.0;data source= " & WIS_ConnectName & ";Jet OLEDB:Database Password = pd"
Set WIS_Base_Rs = New ADODB.Recordset
WIS_Base_Rs.Open txtSQL, WIS_Base_Con, adOpenKeyset, adLockPessimistic
Set WIS_Base_Connect = WIS_Base_Rs
end function
解决方案 »
- ACCESS+VB 在VB里插不进去数据库,在ACCESS查询器里可插入,求助
- 哪里有好的(多线程、断点续拷)文件复制工具,并且需要支持命令行的
- 关于PostMessage
- 如何将选中的内容复制到一个临时的word中
- 毕业设计做车栽GPS,求助
- 如何用VB6在WindowsXP下锁定ALT+Tab,以及Ctrl+Del+Alt三键
- 我的网站开通了http://www.cgsstudio.com/,虽然暂时东东还不多,但也有不错的源码。
- 是否有这样的软件?
- 关于.jpg文件的问题
- 干嘛我发不了分???
- P2smon.dll控件怎么注册不上啊
- 各位大侠,能否出手帮我想实现在MSFlexGrid1第3列弹出Combo1列表,其它都是用文本输入??
Set WIS_Base_Rs = New ADODB.Recordset
WIS_Base_Rs.Open txtSQL, WIS_Base_Con, adOpenKeyset, adLockPessimistic
Set WIS_Base_Connect = WIS_Base_Rs
并成一句,直接
WIS_Base_Connect.Open ...
呢?
没试过。
我把数据库分成2个文件,其中一个文件A为公共数据,比如说一些人员的信息,而另外一个文件B为记录数据,经常要更新,在本地硬盘上测试,软件读取文件A和B时很快,但网络硬盘比较慢,如果我将文件A在每次开启软件后自动拷贝到本地硬盘,这样操作比较顺畅,就是怕这样操作带来一些很多弊端。。
是否有什么好的方法来解决呢?呵呵
建议步骤:
1:先在服务器上安装sql server
2:从sql server管理器中导入mdb文件, 会自动生成相同结构的库.
3:将连接字符串替换成sql server方式: "Provider=SQLOLEDB.1..."
4:测试,调试
5:替换所有客户端
Set WIS_Base_Con = Nothing
If WIS_Base_Rs.State = adStateOpen Then WIS_Base_Rs.Close
Set WIS_Base_Rs = Nothing先判断是否打开然后关闭,释放资源。
这个动作是否会对别人或者数据库产生影响?
当别人正在打开数据库时,而我正常启动软件,清除啦连接以及资源(close / Nothing)是否会导致别人访问数据库异常?
我曾经6个人,ACCESS换成SQL SERVER,快了好多。不是你并发处理的好不好和优化SQL语句的问题,不信自己测试。
还是恢复到问题:如果我在做 清除资源/断开连接动作 是否会对别人造成影响呢?