能否用 ADO 代码建立一数据库文件(mdb)?

cqwdx 2002-03-06 10:28:43
能否用 ADO 代码建立一数据库文件(mdb)?如何建立?
...全文
5 点赞 收藏 3
写回复
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
HeatLoad 2002-03-06
先引用“Microsoft DAO 3.6 Object Library”

Dim db As Database '数据库对象定义
Dim dbName As String '数据库文件名
dbName = "NewDB.mdb"
Set db = CreateDatabase(dbName, dbLangChineseSimplified, dbEncrypt) '建立数据库
db.Execute "create table 表名 (field1 long,field2 text(8))" '添加表
db.Close
Set db = Nothing



'with ADOX
Sub CreateTable()

Dim tbl As New Table
Dim cat As New ADOX.Catalog

'Open the catalog.
' Open the Catalog.
cat.ActiveConnection = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=c:\Program Files\Microsoft Office\" & _
"Office\Samples\Northwind.mdb;"

tbl.Name = "MyTable"
tbl.Columns.Append "Column1", adInteger
tbl.Columns.Append "Column2", adInteger
tbl.Columns.Append "Column3", adVarWChar, 50
cat.Tables.Append tbl

End Sub

用ADO来扩展建数据库
首先要引用:Microsoft ADO Ext.27 for DLL and securiy
Dim strDB As New ADOX.Catalog
Dim strTab01 As New ADOX.Table
dim DBPATH_Name as string
DBPath_Name = App.Path & "\" & Num_Dig_J & ".mdb"
strDB.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBPath_Name
strTab01.Name = "yh" '表名
strTab01.Columns.Append "YHXM", adVarWChar, 14 '字段名
strTab01.Columns.Append "YHDH", adVarWChar, 14 '同上
strDB.Tables.Append strTab01
Mircosoft.jet.oledb.4.0代表office 2000
Mircosoft.jet.oledb.3.51代表office 97

还是用DAO比较好。
这里有个例子:

Dim db As Database
Dim tb As TableDef

Set db = CreateDatabase("G:\test.mdb", dbLangGeneral) '建立数据库
Set tb = db.CreateTableDef("table1") '建立表

tb.Fields.Append tb.CreateField("Field1", dbText) '添加字段
db.TableDefs.Append tb '添加表

“引用”“Microsoft DAO 3.6 Object Library”。

回复
shawls 2002-03-06

使用adox才可以!

回复
wuzhu 2002-03-06
access 97
Dim dd As Workspace
dd.CreateDatabase Name
回复
发动态
发帖子

1180

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
社区公告
暂无公告