vb 多用户访问 access

我的程序需要 支持十几个人同时查询(读) access,只需要支持同时单线程写
access。也就是支持多人查询的同时还能允许一个用户去修改记录,这个能不能做到的呢?现在是多用户同时查就报正在使用的错误了,请问什么地方需要设置?

在局域网里,要能多用户,方法:
方法一:如果操作系统为xp 之类的,采用共享文件夹的方式,虽然可以,但是用户数最多为10个,超过就提示错误。我看网上到处介绍如何破解用户数10 的限制,看了很多,但是实际没有解决。可能是我还没有摸到关键。
方法二:用户数超过10的,建议服务器安装Windows Server,我一直在使用的就是用此方法,我安装的是Windows Server 2003,100多个用户也没有问题。
当你方法二,用得熟了,不仿尝试使用 Windows Server 2003 + SQL server
其实这个方法与方法二,相差不大,只要在服务器端,把access导入到SQL就可以了,客户断的程序,唯一要修改的就是连接数据库,其它完全一样。它的好处,是不采用共享方式,相对安全。追问

sqlserver我知道,只是真正用这个软件的人不会配置sqlserver,还是access对他而言比较简单,所以还是只能用access。不用10个,5个用户也行。但现在是我用两台机,两个用户,用定时器急速查询的时候,都报 run-time error 不能使用";文件已在使用中 的错误。查询时 rs.open,conn,1,1 这样写的

追答

我用XP只是试过,走的弯路,就是超过10就不行,你说的
用定时器急速查询的时候,

我不理解,更没有这个实验?

你把
rs.open,conn,1,1

改成
rs.open,conn,1,2 试试
是这个有问题
后面那个1是只读,2可以编辑修改

追问

改成1,2也不行的,我也不需要编辑和修改,只读就行了。用定时器急速查询,就是我里面有个查询的过程打开数据库进行查询,我设了个定时器,每0.1秒执行一次这个查询过程。当两台机都这样做的时候,刚才说的问题就出现了。而且,每次都是存放access那台机(即共享那台机)出现这个错误,网络情况一般,可以感觉出来另外一台机访问有点慢,但是需要访问共享那台机反而没事。

追答

为什么要“每0.1秒执行一次这个查询过程”?

追问

压力测试一下,因为多人用的话,不排除这种间隔很短的查询的情况出现

追答

你好,我分别用Adodc控件和 Adodb对象,做了个实验,看似没有问题,我把工程发给你,你看看。

不过说明,我的那台计算机安装的是Windows Server 2003


温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-09
不建议这么做,建议用SQL server
access超过5个并发用户就出问题
每个工具的产生都有不同的用途
杀人用刀剑,犁地有专门的犁头,颠倒过来用的话,用起来很不顺手也困难重重追问

那如果不超过5个,怎么做呢?

VB如何连接访问数据库Access
在Access中新建名为Database1.mdb的数据库,注意后缀为MDB,如果是Access2007版本,需另存为03版本,以支持VB连接。成功建立后,会进入数据表界面,输入表名,这里设置为test,完成准备工作。打开VB,新建标准EXE项目。在菜单栏中找到工程→部件,勾选MicrosoftADODataControl6.0和MicrosoftHierarchicalFlexgri...

VB怎么连接访问Access数据库
DAO\/Jet是为了实现从VB访问Access数据库而开发的程序接口对象。使用DAOs访问SQL Server的过程如下:应用程序准备好语句并送至Jet,Jet引擎(MASJT200.DLL)优化查询,载入驱动程序管理器并与之通讯,驱动程序管理器(ODBC.DLL)通过调用驱动器(SQLSRVR.DLL)的函数,实现连接到数据源,翻译并向SQL Server提交S...

用VB如何访问远程Access数据库?
下面是转贴的代码,和访问自己电脑上的ACCESS操作是一样的,无非是登录以及访问的问题, 代码中的192.168.2.36可以换成你需要的远程电脑的IP.=== 如果想每次都能自动通过验证 在当前目录上建立一inf文件,如Server.inf(其它格式文件也可)文件内容如下:net use \\\\192.168.2.36 "密码" ...

vb6.0中怎样远程访问access数据库?
ACCESS属于单机文件型数据库,不同于MSSQL或MYSQL,不能够在客户端直接读写的。如果一定要这么做,可以参考网站的方式,就是在服务器端用ASP做个数据读写接口,然后客户端通过http调用这个ASP文件来间接读写服务器端的ACCESS数据库(数据通过XML格式传递)。不过效率就不敢保证了。补充一下,楼上的只能...

VB数据库管理器的使用
在操作之前,确保您的系统中已安装Office Access数据库。这是使用VB数据库管理器的关键步骤。正确的安装状态能够保证连接操作的顺利进行,避免因软件或数据库未安装导致的连接问题。请仔细遵循安装流程,确保系统满足访问Access数据库的需求。使用VB数据库管理器进行数据库连接时,请确认Office Access数据库已...

VB DAO方式访问ACCESS,编译后,部分电脑不可运行,提示ActicX创建失败,安 ...
你说的是不是 利用ADO控件访问ACCESS呀?你编译后的程序 在某些电脑不能运行 应该是那些电脑 没有安装VB库文件 现在比较新的GHOST系统 都集成了VC VB的运行库 最好是能提供错误提示的截图 好判断是哪个控件缺失造成的提示 根据错误提示 把缺失的文件随EXE文件放在一个文件夹 或者干脆把需要的空间 ...

vb中如何调用Access数据表中的某一个记?
在VB6.0中调用Access数据表中的某个记录,可借助ADO控件实现。具体操作如下:1. 首先,确保在项目中添加ADO控件。在“工程”菜单下的“部件…”选项中,选择并添加Microsoft ActiveX Data Objects 2.5 到工具箱。2. 将ADO控件拖至窗体,然后在代码编辑器中编写代码,通过ADO对象连接Access数据库。例如...

我想用VB6.0做前台,访问ACCESS.用COMBO(下拉文本框
比较常用的是遍历数据集的方法。首先将游标指向第一行数据,接着把第一行中那个字段的值添加到Combo里面,再将游标移至下一行。重复上面的操作直到遍历整个数据集。如果高手们有更好的方法,请不吝赐教哦。

vb.net vb2010 如何使用DAO访问ACCESS数据库,我最终目的是要向ACCESS里...
AccessCmd.Parameters(0).Value = NewText AccessCmd.ExecuteNonQuery()AccessConn.Close()Catch AccessException As Exception MsgBox(AccessException.Message, , "保存")End Try 这里的语句是 AccessString = "UPDATE 记录 SET 文本=? WHERE 编号=1" 其中【?】是变量,在下面的语句中对变量进行...

怎样才能在VB6.0 中连接Access 2003数据库
VB6.0外来数据库的访问 大家知道,VB6.0最引人注目的特点,也是其最令程序员关心的地方,就是它访问多种数据库的强大功能。VB中将非MS Access数据库称为外来数据库(External Database),如dBASE、FoxPro、ODBC等。VB6.0中使用数据控制访问外来数据库同访问Access数据库类似,这里不再赘述。访问外来数据...

相似回答
大家正在搜