'建MDB文件 Set db = DBEngine.CreateDatabase("db6.mdb", dbLangGeneral, dbVersion_0)Set tbl = db.CreateTableDef("Temp") db.Execute "Select Temp.* into NewTable from Temp"db.TableDefs.Delete tbl.Namedb.Close'编辑字段 Dim ADO_Rset As New ADODB.Recordset Dim AdoStr As String '如果你的数据库不是 2000或以上的.那么Microsoft.Jet.OLEDB应该是3.0 AdoStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db2.mdb;Persist Security Info=False" With ADO_Rset .ActiveConnection = AdoStr .CursorLocation = adUseClient .CursorType = adOpenStatic .LockType = adLockBatchOptimistic '修改"姓名"字段 .Source = "ALTER TABLE table1 ALTER COLUMN 性别 BIT" .Open '增加"性别"字段 .Source = "ALTER TABLE table1 ADD 籍贯 BYTE" .Open '删除"籍贯"字段 ' .Source = "ALTER TABLE table1 DROP COLUMN 字段1" ' .Open End With Set ADO_Rset = Nothing Set tbl = NothingSet db = Nothing
DAO的方法楼上说了,我补充一下ADOX的方法 '引用 Microsoft ADO Ext. 2.x for DDL and Security Private Sub Command1_Click() Dim catalog1 As New ADOX.Catalog catalog1.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\new.mdb" End Sub
'建MDB文件及其表 Dim dbsNorthwind As Database Dim tdfNew As TableDef MyPath = getapppathparent + "database\" Set dbsNorthwind = OpenDatabase(MyPath & "main.mdb", False, False, ";pwd=" & DataBasePassword) Set tdfNew = dbsNorthwind.CreateTableDef("TableForstateInFilter") With tdfNew .Fields.Append .CreateField("state", dbText) .Fields.Append .CreateField("TypeForChangeDailyShift", dbText) .Fields.Append .CreateField("ID", dbInteger) End With dbsNorthwind.TableDefs.Append tdfNew
Set db = DBEngine.CreateDatabase("db6.mdb", dbLangGeneral, dbVersion_0)Set tbl = db.CreateTableDef("Temp")
db.Execute "Select Temp.* into NewTable from Temp"db.TableDefs.Delete tbl.Namedb.Close'编辑字段
Dim ADO_Rset As New ADODB.Recordset
Dim AdoStr As String
'如果你的数据库不是 2000或以上的.那么Microsoft.Jet.OLEDB应该是3.0
AdoStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db2.mdb;Persist Security Info=False"
With ADO_Rset
.ActiveConnection = AdoStr
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockBatchOptimistic
'修改"姓名"字段
.Source = "ALTER TABLE table1 ALTER COLUMN 性别 BIT"
.Open
'增加"性别"字段
.Source = "ALTER TABLE table1 ADD 籍贯 BYTE"
.Open
'删除"籍贯"字段
' .Source = "ALTER TABLE table1 DROP COLUMN 字段1"
' .Open
End With
Set ADO_Rset = Nothing
Set tbl = NothingSet db = Nothing
'引用 Microsoft ADO Ext. 2.x for DDL and Security
Private Sub Command1_Click()
Dim catalog1 As New ADOX.Catalog
catalog1.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\new.mdb"
End Sub
Dim dbsNorthwind As Database
Dim tdfNew As TableDef
MyPath = getapppathparent + "database\"
Set dbsNorthwind = OpenDatabase(MyPath & "main.mdb", False, False, ";pwd=" & DataBasePassword)
Set tdfNew = dbsNorthwind.CreateTableDef("TableForstateInFilter")
With tdfNew
.Fields.Append .CreateField("state", dbText)
.Fields.Append .CreateField("TypeForChangeDailyShift", dbText)
.Fields.Append .CreateField("ID", dbInteger)
End With
dbsNorthwind.TableDefs.Append tdfNew