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

vb怎么连接远程access数据库

怎么连呀?请帮忙。最好有程序,在网上找了一些方法都没实现。 --------------------编程问答-------------------- 远程的?怕是不行吧? --------------------编程问答-------------------- 完全共享ACCESS文件所在目录,代码中:\\共享计算机名\共享目录名\数据库名.mdb --------------------编程问答-------------------- 远程网络不会稳定,连接容易掉线,尤其不能绑定,建议用B/S方式 --------------------编程问答-------------------- 以下是连接字符串:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\计算机名\共享目录名\文件名.MDB;"
--------------------编程问答-------------------- 以下是连接字符串: 
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\计算机IP\共享目录名\文件名.MDB;"

不想共享目录名就无法直接.

做C/S结构,让客户端发指令给服务器端,让服务器端操作mdb库,把结果返回客户。
--------------------编程问答-------------------- 远程,代表上公网哦,很不靠谱 --------------------编程问答--------------------
引用 4 楼 chinaboyzyq 的回复:
以下是连接字符串:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\计算机名\共享目录名\文件名.MDB;"


这个我试过,出错。其它地方不用再写点东西吗?我做的是有个服务器上存数据库,在自己的内网上可以对他进行访问并修改的。 --------------------编程问答-------------------- 1、最可靠的办法是服务器上装IIS,写几个网页解决问题;
2、共享是最不可靠的办法;
3、WINSOCK通讯,将客户端的SQL语句发送到服务端,由服务器执行数据库操作; --------------------编程问答-------------------- 建议不要用Access访问远程数据库:
1、远程连接不稳定,Access的DBMS不处理远程连接、并发等一系列问题;
2、Access远程连接的时候容易出现物理损伤,我遇到过多用户访问时文件头损坏的情况;
3、有现成的提供给你远端访问的DBMS如Orcale和SQL Server。

如果真的要远程连接,不管你是否修改Access中的数据,都要完全共享该目录,
建议在访问计算机上建立远程目录的映射磁盘,例如映射到磁盘Z:
可以使用连接字符串:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Z:\文件名.MDB;Persist Security Info=False"  --------------------编程问答--------------------
现在常见的是 B/S 架构来做这种事情。客户端就是浏览器,服务端用 VBS 来写,可以用 Access 数据库。

直接远程访问不是不行,但是服务器端对公网开放共享,太恐怖了。

文件损坏我也遇到过,但往往是瞬间掉电等因素造成的,和多用户未必有关。
--------------------编程问答-------------------- 我是以前用Access2000做的局域网形式学生报名软件,
需要5台计算机执行报名2、3天,
中间很少有死机,不过也可能是网络不稳定造成,
文件损坏遇到过多次,
但是这个错误微软倒是给了解决办法,用Access工具菜单里的压缩和修复就能恢复,
估计是Access可以预见出现的错误 --------------------编程问答-------------------- 当然可以实现了。ACCESS作为服务端数据库,远程操作(Internet 范围内)
从上面的分析可以看出两种模式各有千秋,如果能把两种模式的优点结合起来,扬长避短是否可行呢?这样的模式可以有C/S客户端强大的数据处理能力,同时所依赖的网络环境和B/S结构一样简单,不受地域时间的限制;同时又可以很好的实现C/S结构软件与B/S结构软件之间的数据通信。带着这个设想开始了相关资料和相关技术的查阅,并开始了复杂的测试,经过不断的测试,证明了这种猜想是可以实现的!而且服务端的数据库(Access,mssql,mysql......)与客户端的位置和操作系统毫无关系。其实现原理如下图所示:
 
从上面的原理图中可以看出,客户端计算机位于Internet 中,数据库服务器处于公司级的防火墙和应用服务器之后。应用程序穿透复杂的网络环境与服务器保持通信。ERP的绝大部分数据计算工作都在客户端计算机上完成,提高了运算速度,同时也避免了频繁的在服务器上存取数据,而只是把在客户端计算得到的最终结果返回服务器,这就很好的解决了服务器和客户端之间的资源分配的矛盾。
我的联系方式:cnctj@yahoo.com.cn
http://www.chbinhai.com

--------------------编程问答-------------------- 完全可以,n年前做个这个,当时用的花生壳动态域名,在一个虚拟目录中放的数据库,该目录中需要有个dll文件才可以调用,具体细节记不清了,改天找到传上来 --------------------编程问答-------------------- 写几个asp页面做中转 --------------------编程问答-------------------- 远程数据库建议不要使用access,而是选择sql server、oracle、my sql等。
如果非要用access,则可以使用iis,或者自己写一个nt服务,或者写一个dcom服务器,处理网络通讯和数据库访问。
如果是多用户,还需要加以消息队列。 --------------------编程问答-------------------- 远程桌面..... --------------------编程问答-------------------- 找到了,贴上代码
Private Sub Command1_Click()
    Dim rsGeneric As Recordset
    Dim cnnGeneric As Connection
'
    Set cnnGeneric = New Connection
        'text1中填你的服务器地址
'数据文件放到虚拟目录下
'同时把msadcs.dll也拷贝到虚拟目录下的MSADC目录下
    cnnGeneric.Open "Provider=MS Remote;" _
           & "Remote Provider=MSDataShape;" _
           & "Remote Server=http://" & Trim(Text1.Text) & ";" _
           & "Data Source=try;" ' _
           '& "User Id=Distributor;Password=trythis1;"
    '
    Set rsGeneric = New Recordset
    
    With rsGeneric
         .CursorLocation = adUseClient
         .Open "select * from tbl;", cnnGeneric, adOpenStatic, adLockReadOnly
         .ActiveConnection = Nothing
    End With
Set Adodc1.Recordset = rsGeneric
    
    Adodc1.Refresh

End Sub --------------------编程问答-------------------- 远程目录不稳定的
要是C/S的还是用MY SQL --------------------编程问答-------------------- 花这么多功夫就是为了照顾access 值得吗
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,