Pada modul sebelumnya anda telah memahami peran .Net Framework Data Provider (Connection, Command, DataAdapter) dan Objek DataSet.
Sesuatu hal yang perlu anda pahami adalah DataAdapter digunakan untuk mengambil data dari data source dan mengisinya ke sebuah DataSet sebagai objek DataTable, masing-masing record dalam DataTable membentuk DataRow.
DataAdapter menggunakan SelectCommand untuk mengambil data dari data source.
DataAdapter menggunakan InsertCommand, UpdateCommand, dan DeleteCommand untuk mengupdate data source.
'Buat objek Connection Oledbconn = New OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0; Data Source=D:\BelajarVBnet\Belajar.mdb;") 'Buat objek Command untuk menjalankan SelectCommand sSQL = "Select * From Barang" OledbComm = New OleDbCommand(sSQL, Oledbconn) OledbComm.CommandType = CommandType.Text 'Buat objek DataAdapter sebagai jembatan bagi DataSet OledbDA = New OleDbDataAdapter(OledbComm)
'Isi data ke DataTable Barang di DataSet melalui DataAdapter OledbDA.Fill(ODS, "Barang")
'Membuat objek DataRow untuk record baru ODR = ODS.Tables("Barang").NewRow 'Isi masing-masing kolom pada objek DataRow ODR("KodeBar") = "Delphi" ODR("Keterangan") = "Milist Indoprog-Delphi" ODR("Satuan") = "Email" ODR("Harga") = 0 'Tambah objek DataRow ke DataTable Barang ODS.Tables("Barang").Rows.Add(ODR)
'Mereferensikan ODR ke DataRow yang pertama ODR = ODS.Tables("Barang").Rows(0) 'Ubah kolom Harga ODR("Harga") = 10000
'Hapus DataRow yang kedua ODS.Tables("Barang").Rows(1).Delete()
Sesuatu hal yang perlu anda sadari adalah DataSet merupakan cache data local yang sifatnya disconnect terhadap datasource, sehingga perubahan yang anda lakukan tidak secara otomatis di update, anda perlu mempersiapkan Command (InsertCommand, UpdateCommand, DeleteCommand), sehingga update dapat dilakukan oleh DataAdapter ke data source.
'Generate InsertCommand, UpdateCommand, DeleteCommand untuk update data ODC = New OleDbCommandBuilder(OledbDA) 'Lakukan update data dari DataSet ke data source OledbDA.Update(ODS, "Barang")
'Tutup koneksi Oledbconn.Close()
Imports System.Data.OleDb Module Module3 Public Sub main() Dim Oledbconn As OleDb.OleDbConnection Dim OledbComm As OleDb.OleDbCommand Dim OledbDA As OleDb.OleDbDataAdapter Dim ODS As New DataSet Dim sSQL As String Dim ODR As DataRow Dim ODC As OleDbCommandBuilder 'Buat objek connection Oledbconn = New OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0; Data Source=D:\BelajarVBnet\Belajar.mdb;") sSQL = "Select * From Barang" 'Buat objek command untuk menjalankan SQL OledbComm = New OleDbCommand(sSQL, Oledbconn) OledbComm.CommandType = CommandType.Text 'Buat objek dataadapter sebagai jembatan bagi DataSet OledbDA = New OleDbDataAdapter(OledbComm) 'Isi data ke DataTable Barang di DataSet melalui DataAdapter OledbDA.Fill(ODS, "Barang") 'Membuat objek datarow untuk record baru ODR = ODS.Tables("Barang").NewRow 'Isi masing-masing field pada objek datarow ODR("KodeBar") = "Delphi" ODR("Keterangan") = "Milist Indoprog-Delphi" ODR("Satuan") = "Email" ODR("Harga") = 0 'Tambah objek datarow ke DataTable Barang ODS.Tables("Barang").Rows.Add(ODR) ODR = ODS.Tables("Barang").Rows(0) ODR("Harga") = 10000 ODS.Tables("Barang").Rows(1).Delete() 'Generate perintah SQL untuk update data ODC = New OleDbCommandBuilder(OledbDA) 'Lakukan update data dari DataSet ke data source OledbDA.Update(ODS, "Barang") Oledbconn.Close() End Sub End Module