标题:ACCESS数据库的连接
只看楼主
DXLAB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2018-1-12
结帖率:66.67%
已结贴  问题点数:20 回复次数:8 
ACCESS数据库的连接
请教一下各位大咖,我用VB做介面连接ACCESS数据库时,当程序制作打包好后,数据库的存放数径改变了,要怎么修改路径?是要重新打包一次工程再重新安装么?
搜索更多相关主题的帖子: ACCESS 数据库 连接 打包 重新 
2018-01-12 07:28
wds1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:49
帖 子:393
专家分:2025
注 册:2016-3-10
得分:5 
程序数据库语句如果增加 app.path+"\1.mdb"【app.path表示主程序当前路径。】

那么只要把程序放在数据库路径就可以。

否则你只能重新编译。

2018-01-12 08:10
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:934
专家分:5244
注 册:2015-8-10
得分:5 
如果想要任意存放位置,就能写在代码中
可以采用*.ini配置文件,每次启动程序的时候先读取一下ini文件。
简单的话,可以手动修改ini。 做得好一点,可以做一个程序的设置窗口
2018-01-12 17:21
DXLAB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2018-1-12
得分:0 
回复 3楼 xiangyue0510
这位老师能指点怎么编写和设置*ini文件吗?或推荐一下这方面知识的资料,谢谢!我想把数据库放在我电脑上然后在局域网上的其他客户端安装程序。
2018-01-12 19:01
suzhanpeng
Rank: 4
等 级:业余侠客
威 望:7
帖 子:72
专家分:248
注 册:2016-9-28
得分:5 
局域网的话,放在固定共享位置就可以,路径编写成 \\计算机名称\共享位置  
2018-01-13 08:04
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
得分:5 
将Access数据库放在你的程序文件的根目录,一般连接数据库时使用ADO对象或ADO控件,不论是那种方法连接数据库,均可以使用 App.Path 关键字取得路径。
例如你的数据库是 ABCD.mdb 或 ABCD.accdb ,那么连接语句就是  App.Path & "/ABCD.mdb" 或   App.Path & "/ABCD.accdb"
完整的连接字符串:
cnstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\ABCD.mdb;Persist Security Info=False"     '连接2000、2003等Access数据库
cnstr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & App.Path & "\ABCD.accdb;Jet OLEDB:Database Password=;"    '连接2007、2010等Access数据库
在打包时将Access数据库(*.mdb文件或*.accdb文件)添加到打包文件中,这样你安装后就不存在数据库路径问题了。

请不要选我!!!
2018-01-14 13:47
DXLAB
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2018-1-12
得分:0 
回复 6楼 ZHRXJR
谢谢!我想做成一个共享的系统,数据库的话是要局域网各个客户端读写数据的。目前因为数据库暂没有想好放在那台主机上所以想了解一下程序打包后再改变数据库的路径是不是还得重新回到工程设置路径再次打包然后又重新在各个客户端安装(用户多重新安装工作量)。嘻嘻!
2018-01-14 22:08
wds1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:49
帖 子:393
专家分:2025
注 册:2016-3-10
得分:0 
如果想不重新发布安装。
1、远端程序读取本地配置文件,如果路径改变了,远端更改配置。
  例如config.ini【程序运行时,读取此文件获取ip和数据库】
  ip="192.168.0.1"
  path="c:\1.mdb"
   
2、如果只是路径变了,可以不用重新安装。
  在程序中更改路径,重新编译执行程序,远端替换执行文件即可
2018-01-14 22:48
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
得分:0 
局域网也没有问题,确定一台计算机为“服务器”,将你的程序与数据库放在服务器的一个目录中,将这个目录共享,其他客户端服务这个共享目录就可以了,这个就不需要发布了。
现在一般的计算机都有Office,但可能有的计算机(客户端)没有安装Access数据库,安装一下就可以了。
局域网中“服务器”的IP地址与客户机的IP地址都不能相同,如果相同就会产生冲突,另外“服务器”与客户机必须在一个工作组,这样各客户机才能访问到服务器的.

请不要选我!!!
2018-01-15 09:23



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-484182-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018208 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved