'引用 ADOXSub CreateTable() Dim tbl As New Table
Dim cat As New ADOX.Catalog cat.ActiveConnection = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=c:\Program Files\Microsoft Office\" & _
"Office\Samples\Northwind.mdb;" Msgbox tbl.Name
End Sub
Dim cat As New ADOX.Catalog cat.ActiveConnection = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=c:\Program Files\Microsoft Office\" & _
"Office\Samples\Northwind.mdb;" Msgbox tbl.Name
End Sub
Dim strCnn As String
Dim cnn As New ADODB.Connection, rst As New ADODB.Recordset
strCnn = ......
cnn.Open strCnn
Set rst = cnn.OpenSchema(adSchemaTables)
Do Until rst.EOF
If rst.Fields(3) = "TABLE" Then
Debug.Print rst.Fields(2)
End If
rst.MoveNext
Loop
只要把sysObject的那个系统表读出来并且
使用select * sysObject where xtype="u"
就可以把用户建的所有表名读出来了。
Private Sub Form_Load()
Dim tb As SQLDMO.Table
Dim svr As New SQLDMO.SQLServer
Dim db As SQLDMO.Database
svr.Connect "服务器", "用户名", "口令"
Set db = svr.Databases("数据库名")
For Each tb In db.Tables
If tb.SystemObject = False Then
Debug.Print tb.Name
End If
Next
End Sub
执行此语句先连到你的数据库就可以