以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [讨论]连接外部数据源  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=1372)

--  作者:易服
--  发布时间:2008/12/11 13:59:00
--  [讨论]连接外部数据源
示例:
如果是2007,代码为:

If e.name = "成绩" Then
    e.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & e.ProjectPath &
"成绩数据.mdb;Persist Security Info=False"

End
if


按照上面设置总不成功。access2007的扩展名应该是accdb不是mdb。还得加上源数据库密码
我的成功设置:
If e.name = "TGFLDATA" Then
    e.C & e.ProjectPath & "TGFLDATA.accdb;Persist Security Info=False;Jet OLEDB:Database Password=1E40F"
End if


--  作者:狐狸爸爸
--  发布时间:2008/12/11 14:16:00
--  
呵呵,例子是没有密码的,如果有密码,得按照你那样设置。
--  作者:wcs
--  发布时间:2008/12/11 15:10:00
--  
不明白  Provider=Microsoft.ACE.OLEDB.12.0  是什么意思,生成器里面没有这个选项啊!

它与   Provider=Microsoft.Jet.OLEDB.4.0  有什么区别?

另外,楼主的  e.C 是不是搞错了?应该是: e.ConnectionString = "Provider=Microsoft............  ?
[此贴子已经被作者于2008-12-11 15:12:47编辑过]

--  作者:易服
--  发布时间:2008/12/11 15:33:00
--  
帖不完整,正确的是:
If e.name = "TGFLDATA" Then
    e.C & e.ProjectPath & "TGFLDATA.accdb;Persist Security Info=False;Jet OLEDB:Database Password=1E40F"
End if
[此贴子已经被作者于2008-12-11 15:33:57编辑过]

--  作者:易服
--  发布时间:2008/12/11 15:38:00
--  
怪了!明明帖和时候是完整的,发出后就变了