VB.Net程序设计:ADO.Net读取Access表架构

程序只是记录而已,还没有完成。

创新互联建站专业为企业提供兴安网站建设、兴安做网站、兴安网站设计、兴安网站制作等企业网站建设、网页设计与制作、兴安企业网站模板建站服务,十年兴安做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

请不要模仿。

  1. Imports System.Data  
  2. Imports System.Data.OleDb  
  3.  
  4. Public Class Form1  
  5.  
  6.     Dim ConnStr As String = String.Format("Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}; User Id=admin; Password={1};", "D:\product.MDB", "")  
  7.     Dim conn As OleDb.OleDbConnection  
  8.     Dim cmd As OleDb.OleDbCommand  
  9.     Dim sql As String 
  10.  
  11.     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load  
  12.         'cmd = New OleDbCommand(sql, conn) 
  13.         'cmd.ExecuteNonQuery() 
  14.         conn = New OleDb.OleDbConnection(ConnStr)  
  15.     End Sub 
  16.  
  17.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click  
  18.         Dim dt As DataTable  
  19.         Dim tbl As DataTable  
  20.         Dim tbl2 As DataTable  
  21.  
  22.         conn.Open()  
  23.         'tbl = conn.GetSchema() =数据库的所有架构信息。 
  24.         '获取用户表 
  25.         tbl = conn.GetSchema("tables", New String() {Nothing, Nothing, Nothing, "table"})  
  26.         'tbl = conn.GetSchema("tables") = 所有表,包括系统表。 
  27.         tbl2 = conn.GetSchema()  
  28.         '=不大支持的方法 
  29.         dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, New Object() {Nothing, Nothing, Nothing, "TABLE"})  
  30.  
  31.         Me.ListBox1.Items.Clear()  
  32.         For i As Integer = 0 To dt.Rows.Count - 1  
  33.             Me.ListBox1.Items.Add(dt.Rows(i)("TABLE_NAME").ToString())  
  34.         Next 
  35.  
  36.         Me.DataGridView1.DataSource = tbl  
  37.         Me.DataGridView2.DataSource = tbl2  
  38.         conn.Close()  
  39.  
  40.     End Sub 
  41.  
  42.     Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click  
  43.         Dim tbl As DataTable  
  44.         If String.IsNullOrEmpty(Me.TextBox1.Text) = False Then 
  45.             conn.Open()  
  46.             tbl = conn.GetSchema("columns", New String() {Nothing, Nothing, Me.TextBox1.Text})  
  47.             Dim rows() As DataRow = tbl.Select("", "Ordinal_Position")  
  48.             Me.ListBox2.Items.Clear()  
  49.             For Each row As DataRow In rows  
  50.                 Me.ListBox2.Items.Add(row.Item("column_name"))  
  51.             Next 
  52.             Me.DataGridView2.DataSource = tbl  
  53.             conn.Close()  
  54.         End If 
  55.  
  56.     End Sub 
  57.  
  58.     Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged  
  59.         If Me.ListBox1.SelectedItems.Count > 0 Then 
  60.             Me.TextBox1.Text = Me.ListBox1.SelectedItem.ToString  
  61.         End If 
  62.     End Sub 
  63.  
  64.     Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnGetDatatable.Click  
  65.         Dim db As New AccessHelper  
  66.         db.connStr = ConnStr  
  67.         If Me.TextBox1.Text > "" Then 
  68.             db.Open()  
  69.             Me.DataGridView3.DataSource = db.GetDataView("select * from " & Me.TextBox1.Text)  
  70.         End If 
  71.  
  72.     End Sub 
  73. End Class 

 


网页标题:VB.Net程序设计:ADO.Net读取Access表架构
网站URL:http://ybzwz.com/article/gjjhch.html