Bagaimana menampilkan nama-nama tabel yang terdapat dalam satu file database Ms Access ke dalam ListBox? Rani mau coba jawab pertanyaan ini yah.
Berikut ini database access yang akan menjadi kelinci percobaan kita, ada 3 tabel di dalam nya.
Kemudian kita susun UI sebagai berikut:
Klo ada pertanyaan "koq ada datagridview nya juga sih?" Ini tambahan aja, biar model nya kayak artikel excel yang ini nih --> Click Here
Mari kita kebelakang panggung:
Imports System.Data.OleDb
Public Class Form1
Dim con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0" & _
";Data Source=latihan.accdb;" & _
"Persist Security Info=False;")
Sub ListTables()
Dim SchemaTable As DataTable
Try
ListBox1.Items.Clear()
con.Open()
SchemaTable = con.GetOleDbSchemaTable( _
System.Data.OleDb.OleDbSchemaGuid.Tables, _
New Object() {Nothing, Nothing, Nothing, Nothing})
For i As Integer = 0 To SchemaTable.Rows.Count - 1
If SchemaTable.Rows(i).Item("TABLE_TYPE").ToString() = "TABLE" Then
ListBox1.Items.Add(SchemaTable.Rows(i).Item("TABLE_NAME").ToString())
End If
Next
Catch ex As Exception
MessageBox.Show("Error: " & ex.Message)
Finally
con.Close()
End Try
End Sub
Sub GetDataTable(TableName As String, Limit As Integer)
Dim cmd As New OleDbCommand
Dim adapt As New OleDbDataAdapter
Dim dt As New DataTable
Try
con.Open()
cmd.Connection = con
cmd.CommandText = "SELECT TOP " & Limit.ToString() & _
" * FROM " & TableName
adapt.SelectCommand = cmd
adapt.Fill(dt)
DataGridView1.DataSource = dt
Catch ex As OleDbException
MessageBox.Show("Error: " & ex.Message)
Finally
con.Close()
End Try
End Sub
Private Sub Form1_Load(sender As Object, _
e As EventArgs) Handles MyBase.Load
ListTables()
If ListBox1.Items.Count > 0 Then
ListBox1.SelectedIndex = 0
End If
End Sub
Private Sub ListBox1_SelectedIndexChanged(sender As Object, _
e As EventArgs) Handles ListBox1.SelectedIndexChanged
GetDataTable(ListBox1.SelectedItem.ToString, 100)
End Sub
End Class
Mari kita coba run, secara otomatis terpilih list item yang pertama.
Dan jika list terpilih berubah datagrid akan menampilkan isi tabel yang terpilih.
Click here if you like this article.
1 Comments
Mau tanya ni mbak, klo misalnya database MySql gmn ya?
Terima kasih