访问Microsoft Jet数据库---用Microsoft Jet 访…

2008-02-23 06:52:17来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

访问其它 Microsoft Jet 数据库 ( . mdb) 中的数据,包括用 M1crosoft Jet 的老版本建的各种数据库。

1. 链接外部 Microsoft Jet 表
为了在本地 Microsoft Jet 数据库中链接外部 Microsoft Jet 表,可以先用 OpenDatabase 方法打开本地 Microsoft Jet 数据库,建立一个 TableDef 对象,并设置该对象的 Connect 和 SourceTableName 属性,以分别指定希望链接的外部 Microsoft Jet 表的路径和名称。这种方法适用于 Microsoft Jet 1.x , 2.x 和 3.x 数据库。

例:编写程序链接外部 MicrosoftJet 表。在窗体上画一个命令按钮,然后编写如下事件过程:

Private sub Commandl_C1ick()

Dim dbsJet As Database

Dim tdfExtemalJetTable As TableDef

‘打开 Microsoft Jet 数据库

Set dbsJet = OpenDatabase ("C:\dbdir\db1.mdb")

'建立 TableDef 对象

Set tdfExtemalJetTable = dbsJet.CreateTableDef ("LinkTable")

'设置连接信息

tdfExtemalJetTable.Connect = ";DATABASE=" & "d:\dbtest\dbtest.mdb"

tdfEXternalJetTable.SourceTableName = "tb"

'追加 TableDef 对象以创建链接

dbSJet.TableDefs.Append tdfExtemalJetTable

'显示确认信息

MSgBOx "F1nishedlinhng" & tdfEXternalJetTable.SourceTableName & ".",0

End Sub

该例链接了外部 Microsoft Jet 表,然后显示一个信息框作为确认。注意,当连接使用 Microsoft Jet 数据库引擎的外部数据库时,不能用源数据库类型作为连接字符串。本例中的连接字符串以一个分号开头,而不是以源数据库类型开头。

说明:

(1) 建立了对一个表的链接之后,就可以像处理其它 Access 表一样来使用链接表。但是应注意,在引用链接表时,不要使用表的初始名,而应使用链接该表时为其分配的名字。对于上面的例子来说,所建立的链接表为 LinkTable ,可以用下面的语句打开这个表:

Set MyTable = MyDB.OPenReCordset( “ LinkTable “, dbOPenTable)

(2) 在链接一个外部表后,如果试图再次链接该表,将会显示出错信息。因此,在运行一个链接外部表的程序时,应确保要建立的链接表不存在,或者在处理完后解除链接。可以用 TableDefs 集合的 Delete 方法解除链接,例如:

MvDB.TableDefs.Delete ” LinkTable “

2 .打开外部 Microsoft Jet 表

可以用 OpenDatabase 方法直接打开外部 Microsoft Jet 表,分别用路径、独占访问值、只读值和数据源名称作为参数。

例:编写程序,打开外部 MicrOsoftJet 表,并输出表的内容。在窗体上画一个命令按钮,然后编写如下的事件过程:

Private Sub Command1_Click()

Dim dbsExtemalJet As Database

Dim rstAccounts As Recordset

FontSize = 12

'打开名为 dbtest 的外部 MicrosoftJet 数据库

Set dbsExtemalJet = OpenDatabase ("d:\dbtest\dbtest.mdb",False,False,"")

' 打开 tb 表中的 Recordset

Set rstAccounts = dbsExtemalJet.OpenRecordset("tb")

Print Tab(2); " 姓名 "; Tab(14); " 地址 "; Tab(32); " 电话 "; _

Tab(44); " 邮政编码 "

Print

DO Until rstAccounts.EOF

Print rstAccounts. 姓名 ; " ";

Print rstAccounts. 地址 ;

Print Tab(30); rstAccounts. 电话 ;

Print Tab(44); rstAccounts. 邮政编码

rstAccounts.MoveNext

loop

rstAccounts.close

dbSEXtemalJet.Close

End sub

该例打开了一个外部 Microsoft Jet 表 , 然后从该表中建立 Recordset 对象 , 并输出表中的全部记录。

上一篇: 访问Foxpro数据库----用Microsoft Jet 访问桌面数据库(二)
下一篇: 如何访问文本文件(1)----用Microsoft Jet 访问桌面数据库(三)

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:用DAO打开Excel文件

下一篇:Visual Basic设计多媒体应用程序