Foxtable(狐表)用户栏目专家坐堂 → 数据库设置问题


  共有3163人关注过本帖树形打印复制链接

主题:数据库设置问题

帅哥哟,离线,有人找我吗?
ycs5801
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1064 积分:7581 威望:0 精华:0 注册:2009/6/24 9:44:00
数据库设置问题  发帖心情 Post By:2021/7/24 13:49:00 [只看该作者]

我在一台电脑上已经开发完软件,数据库用的是自己软件目录中的data.mdb,发布软件之后,发布程序拷贝到了另一台电脑,另一台电脑的数据库位置换了,比如是在d:\data\data.mdb,请问我在软件发布之前,怎样设置好这个数据库目录,之后才能正常运行?

 回到顶部
帅哥哟,离线,有人找我吗?
xiaofei_00
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:138 积分:1169 威望:0 精华:0 注册:2021/6/18 12:12:00
  发帖心情 Post By:2021/7/24 14:01:00 [只看该作者]

我觉得这个没办法了,你应该把数据库的位置放在和你开发的电脑一样的路径。除非你的开发软件上有重新设置数据源的功能

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109505 积分:557193 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/24 14:15:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/topics/0682.htm

第一次使用把数据库放到发布后的publish\project目录里

 回到顶部
帅哥哟,离线,有人找我吗?
ycs5801
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1064 积分:7581 威望:0 精华:0 注册:2009/6/24 9:44:00
  发帖心情 Post By:2021/7/24 18:21:00 [只看该作者]

第二次使用呢?我这个目标数据库位置不能变

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109505 积分:557193 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/25 20:07:00 [只看该作者]

如果是单机使用,正常第二次使用不用管数据库了,因为之前的程序在使用的过程中肯定产生了新的数据。不可能再把数据库覆盖掉,这样之前录入的数据就没有了。只需要把新程序覆盖旧程序即可。

如果是多人使用,需要把数据库放到服务器的共享目录里,这种情况连第一次都不需要了,项目发布前连接连接到这个共享目录的数据库,发布后给各个客户端使用即可。当然也可以通过设置文件指定数据库路径,具体看2楼帮助的示例四

 回到顶部
帅哥哟,离线,有人找我吗?
ycs5801
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1064 积分:7581 威望:0 精华:0 注册:2009/6/24 9:44:00
  发帖心情 Post By:2021/7/27 15:31:00 [只看该作者]

你也可以用另一种方法解决,在项目文件目录下创建一个ip.txt的文本文件,在该文件中输入最新的IP地址,并在BeforeConnectOuterDataSource事件中设置如下代码:

Dim ipFile As String = e.ProjectPath & "ip.txt"
If
 e.Name = "销售数据" Then
    If
 Filesys.FileExists(ipFile) Then
        Dim
 ip As String = FileSys.ReadAllText(ipFile)
        e.ConnectionString = e.ConnectionString.Replace("119.119.120.120",ip)
    End 
If

End
 If


老师,我的数据库在共享盘Z盘下的data\data.mdb,请问这样的话怎么写?


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109505 积分:557193 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/27 15:39:00 [只看该作者]


使用服务器IP(或者名称) + 共享目录名称访问即可。这种情况应该参考BeforeConnectOuterDataSource事件帮助的示例一
If e.name = "成绩" Then
    e.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=//服务器IP如192.168.0.1/data
/data.mdb;Persist Security Info=False"

End
 if

 回到顶部
帅哥哟,离线,有人找我吗?
ycs5801
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1064 积分:7581 威望:0 精华:0 注册:2009/6/24 9:44:00
  发帖心情 Post By:2021/7/28 11:49:00 [只看该作者]

If e.name = "data" Then
    e.Connec tion String = "Provider=Micro soft.Jet.OLE DB.4.0;Data Source=//192.168.0.68/data/data.mdb;Persist Security Info=False"
End If

这样设置之后,打开软件,提示找不到数据库。
[此贴子已经被作者于2021/7/28 11:49:49编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109505 积分:557193 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/28 12:05:00 [只看该作者]

到客户端电脑打开资源管理器,输入下面地址,可以访问共享目录吗?里面有数据库吗?192.168.0.68是共享数据库所在的电脑的IP吗?确定有共享了data这个目录?

//192.168.0.68/data/

 回到顶部
帅哥哟,离线,有人找我吗?
ycs5801
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1064 积分:7581 威望:0 精华:0 注册:2009/6/24 9:44:00
  发帖心情 Post By:2021/7/28 12:39:00 [只看该作者]

我这个是群晖的网络硬盘,用的映射z盘符,我改成z:\data\data.mdb就可以了。另外,我这个网络硬盘上的mdb数据库,有新的数据上传进去之后,我在电脑上需要怎样操作,才能重新载入新的数据?

 回到顶部
总数 13 1 2 下一页