不行啊,我就是改为mdb的字符串的,一样报错,代码如下:即使用手动,或断网后用自动都错。我觉得是否还有些步骤未做?因为外部表指向数据源为SQL,但是下面的代码好像无说明哪个外部表更改了数据源。
Dim ds As String = e.Name 'data source
Dim cs As String = "Provider=SQLOLEDB.1;Password=123456;Persist Security Info=True;User ID=tphfoxtable"
Dim ex As String = e.User.ExtendedValues("数据源")
Select Case ex
Case "局域网"
e.ConnectionString = cs & ";Data Source=rhlserver"
Case "互联网"
e.ConnectionString = cs & ";Data Source=rhlgz.vip.cc"
Case "本地"
If FileSys.DirectoryExists("J:\Tools\FoxTable\项目1_天平行数据库系统\Attachments\备用外数据源2.mdb") Then
e.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = J:\Tools\FoxTable\项目1_天平行数据库系统\Attachments\备用外数据源2.mdb;Persist Security Info=False"
End If
Case "手动"
e.EditConnectionString()
Case "自动"
If Network.Ping("192.168.1.16") = True Then '如果局域网接通
e.ConnectionString = cs & ";Data Source=rhlserver"
ElseIf Network.Ping("rhlgz.vicp.cc") = True Then '采用互联网数据库
e.ConnectionString = cs & ";Data Source=rhlgz.vip.cc"
Else '如果互联网无法接通,采用本地数据库
If FileSys.DirectoryExists("J:\Tools\FoxTable\项目1_天平行数据库系统\Attachments\备用外数据源2.mdb") Then
If FileSys.DirectoryExists("J:\Tools\FoxTable\项目1_天平行数据库系统\Attachments\备用外数据源2.mdb") Then
e.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = J:\Tools\FoxTable\项目1_天平行数据库系统\Attachments\备用外数据源2.mdb;Persist Security Info=False"
End If
End If
End Select
报错如下:
此主题相关图片如下:qq截图20130816170605.png
不是连接字符串的问题,已经正确连接到mdb了,但是似乎外部表有问题。mdb文件结构跟sql一样的,其实就是由SQL导出来的。
[此贴子已经被作者于2013-8-16 17:31:10编辑过]