如下代码:
conn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=" & Dbpath & ""
Set rs = conn.OpenSchema(adSchemaTables)
Do Until rs.EOF
Combo1.AddItem rs!Table_name
rs.MoveNext
Loop
我的数据库里的表为a,b.可为何显示的列表为:a
MSysAccessObjects
MSysACEsSYSTEM
MSysModules
MSysModules2
MSysObjectsSYSTEM
MSysQueriesSYSTEM
MSysRelationshipsSYSTEM
b
这是什么原因?怎么将中间的这些东东去掉?望各位大虾指点。
conn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=" & Dbpath & ""
Set rs = conn.OpenSchema(adSchemaTables)
Do Until rs.EOF
Combo1.AddItem rs!Table_name
rs.MoveNext
Loop
我的数据库里的表为a,b.可为何显示的列表为:a
MSysAccessObjects
MSysACEsSYSTEM
MSysModules
MSysModules2
MSysObjectsSYSTEM
MSysQueriesSYSTEM
MSysRelationshipsSYSTEM
b
这是什么原因?怎么将中间的这些东东去掉?望各位大虾指点。
Set rs = conn.OpenSchema(adSchemaTables)
Do Until rs.EOF
If rs!Table_Type = "TABLE" Then
Combo1.AddItem rs!Table_name
End If
rs.MoveNext
Loop
a
MSysAccessObjects
MSysModules
MSysModules2
b
你这样
msgbox rs!Table_name & vbtab & rs!Table_Type 把所有的表名和类型都列出来,看看a,b的类型和其它系统表有什么不同
用那种类型过滤就行了我的用Table过滤就只有我自己的表了
你试过了么,看看我的显示结果MSysAccessObjects ACCESS TABLE
MSysAccessXML ACCESS TABLE
MSysACEs SYSTEM TABLE
MSysObjects SYSTEM TABLE
MSysQueries SYSTEM TABLE
MSysRelationships SYSTEM TABLE
students TABLE
a TABLE
MSysAccessObjects TABLE
MSysModules TABLE
MSysModules2 TABLE
b TABLE
我的是access97数据库!有关系吗?
MSysModules ACCESS TABLE
MSysModules2 ACCESS TABLE
MSysObjects SYSTEM TABLE
MSysQueries SYSTEM TABLE
MSysRelationships SYSTEM TABLE
students TABLE
为什么我的会只显示是“TABLE”呢?
加什么前缀啊?