'假设mCnnDB是个已打开某一数据库的ADO.Connection
'获取数据库中的所有表名关键是用到ADO.Connection的OpenSchema方法
'该方法返回一个只读的数据集,包括系统表和用户表.
'因此,需要一个集合来保存其中的用户表
Public Function GetAllTableName() As System.Collections.ArrayList
Dim t As New System.Collections.ArrayList()
Dim rs As New ADODB.Recordset()
rs = mCnnDB.OpenSchema(ADODB.SchemaEnum.adSchemaTables)
Do While Not rs.EOF
If rs("TABLE_TYPE").Value = "TABLE" Then
t.Add(rs("TABLE_NAME").Value)
End If
rs.MoveNext()
If rs.EOF Then Exit Do
Loop
rs.Close()
rs = Nothing
Return t
End Function