在建立OLE DB连接的前提下,用VB.NET什么方法可以获得数据库中所有表名?

pink0763 2004-10-15 08:04:03
我已经看过FAQ中的方法,粘贴如下:
Private Sub Form_Load()
Dim adoCN As New ADODB.Connection '定义数据库的连接存放数据和代码Dim rstSchema
Dim strCnn As New ADODB.Recordset

str1 = "Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=wktrade;Data Source=net5"
adoCN.Open str1

Set rstSchema = adoCN.OpenSchema(adSchemaTables)

Do Until rstSchema.EOF
out = out & "Table name: " & _
rstSchema!TABLE_NAME & vbCr & _
"Table type: " & rstSchema!TABLE_TYPE & vbCr
rstSchema.MoveNext
Loop
rstSchema.Close

adoCN.Close
Debug.Print out
End Sub
看的不是很懂,可以解释一下吗?
我现在的问题是我已经建立OLE DB连接(可能是ACCESS,SQL Server,Oracle等),那么接下来用什么方法可以得到数据库中所有的表名?GetOleDbSchemaTable这个方法可以用么?
...全文
102 点赞 收藏 9
写回复
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jam021 2004-10-15
关注,帮你顶!
回复
fxyfx 2004-10-15
SELECT SYSCOLUMNS.name FROM SYSCOLUMNS LEFT OUTER JOIN SYSOBJECTS ON SYSCOLUMNS.id = SYSOBJECTS.id WHERE SYSOBJECTS.xtype = 'u'
回复
pink0763 2004-10-15
对不起,我发错论坛了。这个是VB.NET的问题,我已经在那边提问了。
那边的问题解决后,我会在这里散分的,谢谢关注!
回复
victorycyz 2004-10-15
这个是MSDN上的范例了。你可以自己去看看注解。

回复
junki 2004-10-15
'获得数据库表名,并添加到List控件中(VB方式实现)

  Dim Conn As ADODB.Connection
Dim rs As New ADODB.Recordset

Set rs = Conn.OpenSchema(adSchemaTables, Array(Empty, Empty, Empty, "TABLE"))
Do Until rs.EOF
List1.AddItem rs!TABLE_NAME
rs.MoveNext
Loop
rs.Close
Conn.Close
回复
flyingZFX 2004-10-15
use 你的库名

exec sp_tables
回复
lyadlysysT 2004-10-15
"sp_database" 和 "sp_Tables" SQLServer
回复
hzybc 2004-10-15
有谁知道Access库中的表名?????
回复
xiaowen01 2004-10-15
select name from sysobjects where OBJECTPROPERTY(id, N'IsTable') = 1
回复
发动态
发帖子

1180

社区成员

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