版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
在 vb.net 教程 8-3 数据库操作4 中曾谈到了如何获得某个表的结构。那么对于整个数据库呢?
看如下示例:
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
Dim odc As New OleDbConnection()
odc.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;data source=D:\save\博客教程\08 数据库\Northwind.mdb"
odc.Open()
Dim dt As DataTable
dt = odc.GetOleDbSchemaTable(OleDbSchemaGuid.Tables_Info, Nothing)
Dim queryString As String = ""
For i As Integer = 0 To dt.Columns.Count - 1
queryString &= dt.Columns(i).Caption & " " & dt.Columns(i).DataType.Name & vbCrLf
Next
For i As Integer = 0 To dt.Rows.Count - 1
queryString &= dt.Rows(i)("TABLE_NAME").ToString & " " & dt.Rows(i)("TABLE_TYPE") & vbCrLf
Next
odc.Close()
TextBox1.Text = queryString
End Sub
解释如下
建立一个连接数据库的connection
直接打开这个连接
定义一个数据表
将数据表设置为获得数据库架构信息
odc.GetOleDbSchemaTable(OleDbSchemaGuid.Tables_Info, Nothing)
OleDbSchemaGuid包含了很多静态成员,其中 Tables_Info 返回给定用户可访问的表(包括视图)
其他成员还有Columns Schemata Views 等等。
然后用了两个循环,分别获得表列的名称和类型,行的表名和表类型(表还是视图)。
由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供参考。
学习更多vb.net知识,请参看vb.net教程 目录
————————————————
版权声明:本文为CSDN博主「VB.Net」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。