Pemrograman Database dengan Remote Data Control Tessy Badriyah, SKom,MT
Definisi • Remote Data Control merupakan metode alternatif untuk melakukan koneksi ke database selain menggunakan ODBC dan ORADC
Diagram alur program RDC Program
RDC
ODBC
Oracle Client
Database
Diagram alur program ORADC Program
ORADC
Oracle Client
Database
Komponen Remote Database Server • Cursor Drivers • Data Sets • Lock Types
Cursor Drivers • Cursor Drivers merupakan tools untuk melalukan navigasi di dalam satu set data/record yang digunakan.
Data Sets • Data Sets merupakan sifat dari satu set data/record yang digunakan RDC dan RDO.
Lock Types • Lock Types merupakan jenis locking database yang disediakan oleh RDC dan RDO.
Setting ODBC 1. 2. 3. 4. 5. 6.
7. 8. 9.
Buka control panel Bila operating systemnya windows XP, Windows 2000 maka pilihlah administrative tools Buka datasource (ODBC) Pada user DSN, tekan tombol ADD Pilih driver Oracle in OraDb10g_Home1, kemudian tekan finish Isikan : Data source name = DATAORACLE TNS Service Name(nama net service name yang dibuat) = ORCL User ID (user database anda) = tessy Kemudian test koneksi ODBC yang baru anda buat dengan menekan tombol Test Connection Isikan password user anda, kemudian bila sukses muncul pesan connection succesful, tekan Ok Dan yang terakhir tekan tombol Ok.
Setting Remote Data Control • Klik Project dan pilih Components • Pilih dan klik kontrol Microsoft Remote Data Control 6.0. • Kontrol ini membutuhkan file bernama MSRDC20.OCX yang harus ada pada sistem operasi Windows.
Setting Remote Data Control(2) • RDC selalu menggunakan ODBC sebagai perantara untuk mengakses sebuah remote database. • Berikut langkah-langkah untuk membuat koneksi ke database server melalui DSN di ODBC32 Manager, yaitu : – – – –
Membuka koneksi melalui DSN Mengatur user name dan password Membuka tabel database dan menjalankan query Mengatur beberapa komponen di ODBC, yaitu cursor drivers, data sets dan lock types. – Kembali ke RDC dan Program.
Mengatur Properti Kontrol RDC • • • • • •
Cursor Drivers Data Source Name User Name Password SQL Lock Type
Entry Data Mahasiswa • •
Buat form entry dengan menempatkan component dan object seperti berikut : Dengan nama component sebagai berikut :
– – – – – – – – –
Textbox txtnrp Textbox txtnama Textbox txtalamat Textbox txttelpon DBgrid dbgrid1 MSRDC msrdc1 CommandButton cmdSimpan CommandButton cmdHapus CommandButton cmdKeluar
Setting kontrol DBgrid • Anda hubungkan komponen dbgrid yang anda buat dengan komponen MSRDC yang telah disetting sebelumnya. • Anda dapat meletakkan script berikut kedalam prosedur form load : dbgrid1.datasource = msrdc1 • Atau anda arahkan properties dari dbgrid1 yang bernama datasource ke msrdc1
Contoh setting kontrol RDC (MSRDC1) melalui DSN Dapat anda letakkan di prosedur form load atau anda setting secara manual didalam properties komponen msrdc
• • • • • • • • • •
Private Sub Form_Load() MSRDC1.DataSourceName = "DATAORACLE" MSRDC1.UserName = "tessy" MSRDC1.Password = "tessy" MSRDC1.SQL = "SELECT * FROM SISWA" MSRDC1.CursorDriver = rdUseOdbc MSRDC1.LockType = rdConcurRowver MSRDC1.ResultsetType = rdOpenKeyset MSRDC1.Refresh End Sub
Fungsi pencarian • Fungsi pencarian ada 2 : – Pencarian untuk mencari apakah datanya ada – Pencarian untuk mencari letak data sekaligus mengambil isinya
• Pencarian 1 kita beri nama function ada() => dipakai pada tombol Hapus • Pencarian 2 kita beri nama function ada2() => dipakai pada tombol Simpan
Fungsi pencarian pertama • • • • • • • • • • • • • • •
Function ada() As Boolean MSRDC1.Resultset.MoveFirst ada = False Do While Not MSRDC1.Resultset.EOF If MSRDC1.Resultset.RDOColumns(0) = txtNRP.Text Then txtNAMA.Text = MSRDC1.Resultset.RDOColumns(1) txtALAMAT.Text = MSRDC1.Resultset.RDOColumns(2) txtTELPON.Text = MSRDC1.Resultset.RDOColumns(3) ada = True Exit Do Else MSRDC1.Resultset.MoveNext End If Loop End Function
Fungsi pencarian kedua • • • • • • • • • • • •
Function ada2() As Boolean MSRDC1.Resultset.MoveFirst ada2 = False Do While Not MSRDC1.Resultset.EOF If MSRDC1.Resultset.RDOColumns(0) = txtNRP.Text Then ada2 = True Exit Do Else MSRDC1.Resultset.MoveNext End If Loop End Function
Penekanan tombol enter pada textbox NRP • • • • • • • • • • • •
Private Sub txtNRP_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If ada() = True Then MsgBox "Data ditemukan" Else MsgBox "Data tidak ditemukan" txtNAMA.Text = "" txtALAMAT.Text = "" txtTELPON.Text = "" End If End If End Sub
Program pada tombol cmdSimpan • • • • • • • • • • • • • • • • • • • •
Private Sub cmdSimpan_Click() If (MSRDC1.Resultset.EOF) Then MsgBox "Data baru, tabel siswa masih kosong" MSRDC1.Resultset.AddNew Else ' If ada2() = True Then MsgBox "Data sudah ada dan diubah" MSRDC1.Resultset.Edit Else MsgBox "Data baru" MSRDC1.Resultset.AddNew End If End If MSRDC1.Resultset.RDOColumns(0) = txtNRP.Text MSRDC1.Resultset.RDOColumns(1) = txtNAMA.Text MSRDC1.Resultset.RDOColumns(2) = txtALAMAT.Text MSRDC1.Resultset.RDOColumns(3) = txtTELPON.Text MSRDC1.Resultset.Update MSRDC1.Refresh End Sub
Program pada tombol cmdHapus • • • • • • • • • • •
Private Sub cmdHapus_Click() If (Not MSRDC1.Resultset.EOF) Then MSRDC1.Resultset.Delete txtNRP.Text = "" txtNAMA.Text = "" txtALAMAT.Text = "" txtTELPON.Text = "" Else MsgBox ("Tabel siswa masih kosong") End If End Sub
Tugas 1. Buat table sendiri, dengan struktur dimana ada fieldnya yang memiliki tipe data number (bukan varchar2() atau char()). Maka untuk menyimpan data tersebut pada field database harus diberikan perintah konversi dari text ke bilangan menggunakan fungsi VB StrToInt(namafield.text) 2. Buat aplikasi untuk menampilkan data tersebut dengan menggunakan komponen MSRDC, tambahkan modul untuk menambah atau mengubah data, menghapus data dan keluar dari form.