首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

数据库已打开,拷贝文件是否有影响?另外读写的语句是否可以优化?该怎么解决

2013-01-25 
数据库已打开,拷贝文件是否有影响?另外读写的语句是否可以优化?数据库文件(Access)放在公司公共文件夹中(

数据库已打开,拷贝文件是否有影响?另外读写的语句是否可以优化?
数据库文件(Access)放在公司公共文件夹中(网络硬盘),15人左右的访问量,如果数据库已经打开,我是否可以拷贝.mdb文件呢?是否对其他人的访问造成影响,或者经常这样操作是否对数据库有影响?

另外数据库的搜索和数据读写都用以下函数,是否有优化的可能呢?感觉速度比较慢(也有一部分是因为数据库是存放在网络硬盘上的原因):

Public Function WIS_Base_Connect(ByVal txtSQL As String) As ADODB.Recordset
On Error GoTo ErrCode
Dim WIS_ConnectName As String

Flag_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

[解决办法]
mdb文件被打开时,是可以拷贝到其他地方去的,只不过要注意,ACCESS 数据库的并行访问性能并不太好,多人通过共享的方式一起访问它,有可能出现数据丢失。即出现所谓的“脏数据”。

程序上,能否将
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 ...
呢?
没试过。
[解决办法]
象这样的情况最好使用Sql Server
[解决办法]
好东西,值得下载
[解决办法]
从性能和安全性来说,你的环境中数据库用ACCESS不是很恰当.
建议步骤: 
1:先在服务器上安装sql server
2:从sql server管理器中导入mdb文件, 会自动生成相同结构的库.
3:将连接字符串替换成sql server方式: "Provider=SQLOLEDB.1..."
4:测试,调试
5:替换所有客户端
[解决办法]
引用:
从性能和安全性来说,你的环境中数据库用ACCESS不是很恰当.
建议步骤: 
1:先在服务器上安装sql server
2:从sql server管理器中导入mdb文件, 会自动生成相同结构的库.
3:将连接字符串替换成sql server方式: "Provider=SQLOLEDB.1..."
4:测试,调试
5:替换所有客户端



我也赞成这种做法,
[解决办法]
没事,随时可以拷贝
[解决办法]
ACCESS,15人,在共享机制下,想快起来根本不可能。
我曾经6个人,ACCESS换成SQL SERVER,快了好多。不是你并发处理的好不好和优化SQL语句的问题,不信自己测试。
[解决办法]
ACCESS是独占模式的,想一起访问应该是出问题的,同一时间,特别是写操作,可定是不允许两个人同时的。

热点排行