Sesi 12 : Pengenalan Pemrograman Database 1. Intro database a. Database berisi sekumpulan tabel, tabel berisi sekumpulan record (baris) dan record terdiri dari kumpulan field (kolom), dimana masing-masing field berisi informasi. b. Data adalah sekumpulan informasi yang tersimpan dalam database dengan suatu tipe data tertentu. c. Tipe data ini berbeda penamaanya tergantung aplikasi yang digunakan, namun kita dapat membedakannya secara general menjadi 3 jenis yaitu angka, huruf/string dan logika. d. Aplikasi DBMS (Database Management System) digunakan untuk memudahkan kita melakukan pengelolaan data dalam database. Salah satu aplikasi DBMS yang bisa digunakan adalah Microsoft Office Access 2. Bwt folder sesi12 kemudian dalam folder tersebut bwt database dengan menggunakan Microsoft Office Access a. Aktifkan Microsoft Office Acces, simpan database dengan nama dbSesi12.mdb b. Pilih Table Design untuk membwt tabel, atur tabel dengan struktur sebagai berikut: Table 1 Struktur Tabel tbUser No Field Name Data Type Filed Size Keterangan 1 idUser Text 10 Berisi idUser 2 Password Text 10 Berisi sandi user Simpan tabel tersebut dengan nama tbUser Open tabel tersebut dan isi dengan data, contoh Table 2 Contoh Isi Tabel tbUser No idUser Password 1 0610U001 1234 2 0610U212 4321 Simpan dan tutup tabel tersebut c. Bwt tabel dengan struktur sebagai berikut: Table 3 Struktur Tabel tbNilai No Field Name Data Type Filed Size Keterangan 1 NPM Text 10 Berisi NPM 2 kdMataKuliah Text 10 Berisi kode Mata Kuliah 3 SKS Number Byte Jumlah SKS Mata Kuliah 5 Kelas Text 2 Kelas dari Mata Kuliah 4 GradeNilai Text 1 Grade nilai yg diperoleh Simpan tabel tersebut dengan nama tbNilai Open tabel tersebut dan isi dengan data, contoh Table 4 Contoh Isi Tabel tbNilai No NPM kdMataKuliah SKS Kelas GradeNilai 1 0610U001 0611303 2 A B 2 0610U212 0611303 2 B A Simpan dan tutup tabel tersebut 3. Buka VB.Net dan bwt aplikasi untuk pengelolaan database, simpan pada folder sesi12 4. Bwt desain form berikut ini Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 2
Gambar 1 Form login 5. Atur properties dari masing-masing kontrol dalam form pada form di atas sebagai berikut Table 5 Properties Gambar 1 No Kontrol Properties Value 1 Form Name Font MaximizeBox MinimizeBox StartPosition Text frmLogin Arial,12 False False CenterScreen Login 2 Label Name Text lblidUser idUser Name Text lblPassword Password 3 TextBox Name Text txtidUser
Name PasswordChar Text txtPassword *
4 Button Name Text btnLogin Login Name Text btnCancel Cancel
6. Bwt koneksi data (klik menu data, klik add New Data source. Lihat gambar)
Gambar 2 Menu Data Muncul form berikut ini Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 3
Gambar 3 Setting Data Source step 1 Klik next, muncul form berikut ini Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 4
Gambar 4 Setting Data Source step 2 Klik New Connection, muncul form berikut ini Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 5
Gambar 5 Setting Data Source step 3 Klik change, muncul form berikut ini Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 6
Gambar 6 Setting Data Source step 4 Pilih Microsoft Acces Database File, kemudian klik OK, muncul form berikut ini
Gambar 7 Setting Data Source step 5 Klik Browse danpilih database yang sudah anda bwt pada nomor 2 di atas. Klik Test Connection untuk memeriksa apakah koneksi kita berhasil atau tidak. Jika berhasil akan muncul pesan Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 7
Gambar 8 Pesan Test Connection Klik OK, kemudian klik Next, jika muncul pesan berikut
Gambar 9 Setting Data Source step 6 Untuk sementara klik No, muncul form Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 8
Gambar 10 Setting Data Source step 7 Klik Next, muncul form berikut Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 9
Gambar 11 Setting Data Source step 8 Klik checkbox (lihat gambar di atas), kemudian klik Finish 7. Bwt class koneksi (pada Solution Explorer klik kanan project anda, pilih Add,klik Class. Lihat gambar)
Gambar 12 Add Class Simpan dengan nama KoneksiDB.vb Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 10
8. Pada Class tsb ketik program berikut Imports System.Data Imports System.Data.OleDb Namespace AccessData Public Class KoneksiDB 'membuat koneksi ke database dengan OleDbConnection 'database tersimpan di G:\exPemrograman III\Sesi12\ dengan nama file dbSesi12.mdb Public Conect As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:\exPemrograman III\Sesi12\dbSesi12.mdb;Jet OLEDB:Database Password=; ") Public Function open() As OleDbConnection Conect.Open() 'buka koneksi ke database Return Conect End Function Public Function close() As OleDbConnection Conect.Close() 'tutup oneksi ke database Return Conect End Function End Class End Namespace
9. Dengan cara yang mirip nomor 6 di atas bwt modul, simpan dengan nama ModulKoneksi.vb, kemudian ketik program berikut Imports System.Data.OleDb
Module modulKoneksi Public cur As New Form Public Msg As Integer 'variabel untuk menyimpan nilai dari MsgBox Public intResponse As Integer Public Conect As New OleDbConnection 'variabel untuk koneksi database Public objCommand As OleDbCommand 'variabel untuk...terusin sendiri ya hehehe Public objDataAdapter As OleDbDataAdapter Public objDataReader As OleDbDataReader Public StrSQL As String Public Username, Password, mProcess As String Public objDataSet As New DataSet Public objDataTable As New DataTable End Module
10. Ketik program berikut Imports System.Data Imports System.Data.OleDb
Public Class frmLogin Dim Koneksidb As New AccessData.KoneksiDB
Private Sub frmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load txtIdUser.Focus() End Sub Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 11
Sub CheckUsers() objDataTable.Clear() StrSQL = ("SELECT * FROM [tbUser] WHERE [idUser] = '" & Trim(txtIdUser.Text) & "' ") objCommand = New OleDbCommand objCommand.Connection = Koneksidb.open objCommand.CommandType = CommandType.Text objCommand.CommandText = StrSQL objDataAdapter = New OleDbDataAdapter(objCommand) objDataAdapter.Fill(objDataSet, "MDT_user") objDataTable = objDataSet.Tables("MDT_user") Koneksidb.close() End Sub
Sub Find_User() objCommand = Koneksidb.open.CreateCommand objCommand.CommandText = ("Select [idUser],[Password] from [tbUser] where [idUser]='" & Trim(txtIdUser.Text) & "' ") objDataReader = objCommand.ExecuteReader objDataReader.Read() Username = objDataReader.Item("idUser") Password = objDataReader.Item("Password") Koneksidb.close() End Sub
Private Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogin.Click 'untuk mengaktifkan fungsi CheckUsers CheckUsers() 'mengharuskan user memasukkan idUser dan password If txtIdUser.Text.Trim() = "" And txtPassword.Text.Trim() = "" Then MsgBox("ID User dan Password tidak boleh kosong", MsgBoxStyle.OkOnly+MsgBoxStyle.Critical, "Error Login") txtIdUser.Focus() ElseIf txtIdUser.Text = "" Then MsgBox("ID User tidak boleh kosong", MsgBoxStyle.OkOnly+MsgBoxStyle.Critical, "Error Login") txtIdUser.Focus() ElseIf txtPassword.Text = "" Then MsgBox("Password tidak boleh kosong", MsgBoxStyle.OkOnly+MsgBoxStyle.Critical, "Error Login") txtPassword.Focus() Else Try 'Menghitung jumlah baris yang ada pada ObjDataTable If objDataTable.Rows.Count <= 0 Then 'Jika jumlah baris = 0 / username tidak ada pada table MsgBox("ID User tidak terdaftar", MsgBoxStyle.OkOnly+MsgBoxStyle.Critical, "Error Login") txtIdUser.Focus() Else 'Jika idUser ada pada table / jumlah baris ObjdataTable > 0 Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 12
'Mengaktifkan fungsi mencari nilai value Username & Password Find_User() 'Jika Password yang diketik pada TextBox tidak sama pada Database If Password <> Trim(txtPassword.Text) Then Msg = MsgBox("Password salah!", MsgBoxStyle.OkOnly+MsgBoxStyle.Critical, "Error Login") txtPassword.Focus() Exit Sub Else 'Jika iDUser ditemukan dan Password benar Me.Hide() frmKelolaNilai.Show() txtIdUser.Text = "" txtPassword.Text = "" End If End If Catch When Err.Number <> 0 MsgBox("Tidak dapat melakukan proses" & vbCrLf & Err.Description) End Try End If End Sub
Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click intResponse = MessageBox.Show("Beneran ne mo udahan ?", Me.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) If intResponse = MsgBoxResult.Yes Then End Else Exit Sub End If End Sub End Class
11. Seperti langkah 7 di atas tambahkan form baru, simpan dengan nama frmKelolaNilai 12. Kemudian ikuti step berikut a. Tambahkan dalam form tersebut Kontrol DataGridView, luas area DataGridView di form untuk sementara sembarang. Setelah anda masukan kontrol tsb akan muncul Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 13
b. Klik combo box pada Choose Data Source, muncul
c. Pilih tblNilai, sehingga desian form menjadi
Pemrograman III (Visual) Danang Junaedi
IF-UTAMA Ver/Rev:0/0 Halaman: 14
Jika luas area DataGridView-nya kurang, silahkan anda atur sendiri sampai ukurannya cukup 13. Atur properties dari form di atas sebagai berikut No Kontrol Properties Value 1 Form Name Font StartPosition Text frmKelolaNilai Arial,12 CenterScreen Pengolahan Nilai 2 DataGridView Name AllowToAddRow AllowToDeleteRow AllowToOrderColumns allowToResizeCoulumn AllowToResizeRow BorderStyle dgridUser True True True True True Fixed3D 14. Jalankan program dan bwt penjelasan serta analisisnya. Kirim ke imel saya paling lambat Minggu, 4 Desember jam 24:00
Referensi: 1. Junindar, Step By Step Menjadi Programmer Handal dengan VB.Net Step 1 Dasar Pembangunan Database Berbasis Windows, 2003, IlmuKomputer.com 2. Junindar, Multiple Binding Navigator pada VB2008, 2003, IlmuKomputer.com
Studi Kasus Penerapan Ajax Yang Seringkali Dijadikan Contoh Atau Referensi Adalah Untuk Mengimplementasikan Autocomplete Yang Seringkali Juga Mengacu Pada Implementasi Google Suggestion Di Url