以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=159527) |
-- 作者:Artemis -- 发布时间:2020/12/29 14:08:00 -- [求助] 专家,你好。请问以下问题: 在项目文件目录下设置了一个ip.txt文件,里面是:E:\\1.mdb 我在项目事件BeforeConnectOuterDataSource,写了代码 Dim
ipFile
As
String = e.ProjectPath
&
"ip.txt" If Filesys.FileExists(ipFile) Then Dim ip As String = FileSys.ReadAllText(ipFile) e.ConnectionString = e.ConnectionString.Replace("c:\\2.mdb",ip) End If 当1.mdb没有设置密码时,可以连接上。但是设置密码后,就连接不上了。 后来我写成 Dim
ipFile
As
String = e.ProjectPath
&
"ip.txt" If Filesys.FileExists(ipFile) Then Dim ip As String = FileSys.ReadAllText(ipFile) e.ConnectionString = e.ConnectionString.Replace("c:\\2.mdb","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ip & ";Persist Security Info=true;Jet OLEDB:Database Password=111111") End If 还是没用,请问如何解决。谢谢。 |
-- 作者:有点蓝 -- 发布时间:2020/12/29 14:13:00 -- http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=50080 原来的连接字符串是怎么用的?发上来看看 试试 e.ConnectionString = e.ConnectionString.Replace("c:\\2.mdb",ip) & ";Jet OLEDB:Database Password=111111"
|
-- 作者:Artemis -- 发布时间:2020/12/29 14:27:00 -- 以下是我正常连接数据库的字符串,一直都没有问题,可以正常使用。 Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=C\\data\\test.mdb;Persist Security Info=True;Jet OLEDB:Database Password=111111 至于老师你说的方法我晚上在家试一下。 e.ConnectionString = e.ConnectionString.Replace("c:\\2.mdb",ip) & ";Jet OLEDB:Database Password=111111" 在帮助里,我好向没有看到这样的写法,希望有用啊。谢谢啦。 |
-- 作者:有点蓝 -- 发布时间:2020/12/29 14:28:00 -- 如果2个数据库的密码完全一致,下面语法肯定没有问题 |
-- 作者:Artemis -- 发布时间:2020/12/29 14:32:00 -- 嗯,我是一个有密码,一个没有密码。用有密码的去替代没有密码的就出现连接错误。直接退出了。 按照老师的意思就是如果两个数据库的密码一致,那么 e.ConnectionString = e.ConnectionString.Replace("C\\data\\test.mdb",ip) 上述代码是肯定可以执行的对吧??那这样就简单了,我回去把两个交替使用的数据库设置成一样的密码试一下就知道了。对吧。老师。 谢谢。
|
-- 作者:有点蓝 -- 发布时间:2020/12/29 14:49:00 -- 没有密码的原来的连接字符串是怎么用的?发上来看看 |
-- 作者:Artemis -- 发布时间:2020/12/29 15:03:00 -- 这是没有密码的连接字符串。 Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=C\\data\\test.mdb;Persist Security Info=false |
-- 作者:有点蓝 -- 发布时间:2020/12/29 15:06:00 -- e.ConnectionString = e.ConnectionString.Replace("C\\data\\test.mdb",ip).Replace("Persist Security Info=false","") & ";Persist Security Info=True;Jet OLEDB:Database Password=111111" [此贴子已经被作者于2020/12/29 15:05:50编辑过]
|
-- 作者:Artemis -- 发布时间:2020/12/29 15:11:00 -- 老师,这样的双重replace我还没有用过。晚上试下。 e.ConnectionString = e.ConnectionString.Replace("C\\data\\test.mdb",ip).Replace("Persist Security Info=false","") & ";Persist Security Info=True;Jet OLEDB:Database Password=111111" 后面的replace有点迷糊。 |
-- 作者:有点蓝 -- 发布时间:2020/12/29 15:16:00 -- 把Persist Security Info=false去掉 |