Setelah cukup lama melupakan .NET kali ini kita akan mencoba membuat suatu aplikasi sederhana yang terdiri dari proses-proses Create, Read, Update dan Delete (CRUD)/membuat, membaca, merubah, menghapus data dalam database menggunakan Visual Basic .NET.
Dengan IDE Visual Studio 2008, proses development suatu aplikasi jadi lebih mudah, tinggal klik n drop, semuanya jadi.
Sekarang kembali kepada tiap-tiap individu, ingin menekan remote untuk menonton TV tanpa perlu tahu proses apa yang ada dibalik remote tersebut? Atau menekan remote untuk menonton TV sambil mempelajari bagaimana suatu perangkat bisa dihidupkan hanya dengan menekan sebuah tombol?.. ^^
Karena gaya pemrograman setiap programmer berbeda-beda, maka jangan heran jika kode-kode yang akan disertakan berbeda dengan kode-kode yang terdapat dalam buku-buku.
Ok langsung aja, yang perlu dipersiapkan adalah Visual Studio 2008 (trial/full). Yup, hanya itu…
1. Membuat Project Baru
Buka Visual Studio 2008, Klik File > New > Project (atau dengan menekan kombinasi tombol CTRL+SHIFT+N). Akan muncul dialog ‘New Project’, pilih Visual Basic > Windows, pilih template ‘Windows Forms Application’ masukkan ‘DataBarang’ pada bagian ‘Name’ kemudian klik OK.
[Klik gambar untuk memperbesar]
2. Membuat Database Baru
Server database yang akan digunakan adalah SQLExpress 2005 yang sudah terintegrasi ke dalam IDE Visual Studio 2008. Untuk membuat suatu database, kita bisa membuatnya melalui panel Server Explorer. Munculkan panel Server Explorer dengan menekan kombinasi tombol ‘CTRL+W, L’ bila panel Server Explorer belum tampil.
Pada panel Server Explorer, klik kanan pada ‘Data Connection’ dan pilih ‘Create New SQL Server Database’, akan muncul dialog baru. Masukkan pada kolom ‘Server Name’ dengan (local)SQLEXPRESS dan masukkan pada bagian ‘New Database Name’ dengan DataBarang. Klik ‘OK’.
Tampilan dalam Server Explorer akan menjadi seperti ini:
3. Membuat Tabel Baru
Berikut setelah Database telah selesai dibuat, kita lanjutkan dengan membuat tabel pada database yang baru tersebut.
Masih pada panel Server Explorer, klik kanan pada ‘Tables’ dan pilih ‘Add New Table’. Masukkan data-data berikut:
KdBarang, Tipe: nvarchar(10), PRIMARY KEY, NOT NULL < Menyimpan kode dari tiap barang
NmBarang, Tipe: nvarchar(50), NOT NULL < Menyimpan nama barang
Jumlah, Tipe: smallint, Default: 0, NULL < Menyimpan jumlah dari tiap barang
Harga, Tipe: money, Default: 0, NULL < Menyimpan data dari harga barang
Tentukan KdBarang sebagai PRIMARY KEY. Klik kanan pada bagian KdBarang dan pilih ‘Set Primary Key’, akan muncul tanda berbentuk kunci di sebelah kiri KdBarang.
Klik tombol ‘Save’ dan beri nama ‘tblBarang’. Tabel baru kita telah jadi, berikutnya kita akan mulai menulis suatu class untuk mengatur koneksi database dan proses-proses CRUD terhadap tabel ‘tblBarang’.
Sebelum lanjut membuat Class, kita akan menambah sedikit pengaturan untuk project ini. Yang akan ditambahkan adalah pengaturan untuk ConnectionString (String koneksi yang akan digunakan agar bisa terhubung dengan Database DataBarang).
Pilih menu ‘Project > DataBarang Properties’. Masuk ke Tab ‘Settings’ dan masukkan ConnectionString pada kolom ‘Name’ dengan Type String dan Scope pilih Application. Pada bagian Value, isikan string koneksi berikut dan klik tombol Save untuk menyimpan :
Data Source=(local)SQLEXPRESS;Initial Catalog=DataBarang;Integrated Security=True
4. Membuat Class
Class pertama yang akan dibuat adalah Class Database dengan nama ‘clsDatabase’. Fungsi dari Class ini nantinya akan mengatur proses koneksi ke dalam database (fungsi Connect, Disconnect dan eksekusi perintah-perintah SQL).
Buat folder baru dengan nama ‘Class’ dalam project DataBarang lewat panel ‘Solution Explorer’.
Tambahkan item baru dalam folder ‘Class’ dengan klik kanan folder ‘Class’ dan pilih ‘Add’ > ‘New Item’. Akan tampil kotak dialog ‘Add New Item’, pilih Class dan pada bagian ‘Name’ masukkan nama ‘clsDatabase’ kemudian klik ‘Add’.
Masukkan kode berikut ke dalam dokumen clsDatabase.vb :
'Import Namespace System.Data.SQLClient untuk menggunakan beberapa Class SQLClient 'agar dapat mengakses database SQL Server Imports System.Data.SqlClient Public Class clsDatabase 'Deklarasikan beberapa variabel 'm_sConnectionString : String koneksi ke database SQL Server Private m_sConnectionString As String = "" 'objConnection : Objek koneksi ke database SQL Server Private objConnection As SqlConnection Sub New() 'String koneksi yang diambil dari Namespace Databarang pada property ConnectionString 'Berfungsi supaya bisa terhubung dengan database server. m_sConnectionString = DataBarang.My.Settings.ConnectionString End Sub Sub New(ByVal sConnectionString As String) 'Untuk mengganti string koneksi (ConnectionString) m_sConnectionString = sConnectionString End Sub 'Fungsi untuk melakukan proses koneksi ke database Public Function Connect() As Boolean Dim cc As Boolean = False Try 'objConnection sebagai Class SQLConnection 'dengan menggunakan string koneksi dari m_sConnectionString objConnection = New SqlConnection(m_sConnectionString) 'Buka koneksi ke database dengan menggunakan method Open() objConnection.Open() 'Jika berhasil melakukan koneksi ke database 'set cc=True cc = True Catch 'Jika tidak berhasil melakukan koneksi ke database 'set cc=False cc = False End Try 'Mengembalikan nilai cc, True atau False, tergantung sukses tidaknya koneksi Return cc End Function 'Fungsi untuk menutup koneksi ke database Public Function Disconnect() As Boolean Try 'Disini method Close() digunakan untuk menutup koneksi objConnection.Close() 'Kosongkan objConnection objConnection = Nothing 'Kembalikan nilai True, jika koneksi telah tertutup Return True Catch e As Exception 'Sebaliknya.... 'Tampilkan pesan kesalahan yang terjadi MsgBox(e.Message()) 'Kembalikan nilai False, jika terjadi masalah dalam menutup koneksi Return False End Try End Function 'Fungsi mengeksekusi perintah SQL '@sSql : berisi perintah-perintah SQL 'Deklarasikan ExecuteSql sebagai SqlDataReader untuk membaca baris dari database Public Function ExecuteSql(ByVal sSql As String) As SqlDataReader Try 'Deklarasikan objCommand sebagai SqlCommand untuk mengeksekusi perintah SQL Dim objCommand As SqlCommand 'Deklarasikan myReader sebagai SqlDataReader Dim myReader As SqlDataReader 'objCommand sebagai SqlCommand dengan perintah SQL diambil dari 'sSql' dan 'koneksi yang digunakan diambil dari objConnection objCommand = New SqlCommand(sSql, objConnection) 'Eksekusi perintah SQL yang terdapat dalam 'sSql' 'dengan menggunakan ExecuteReader() myReader = objCommand.ExecuteReader() 'Kembalikan nilai myReader Return myReader Catch e As Exception 'Jika terjadi kesalahan, tampilkan pesan kesalahannya. MsgBox(e.Message()) Return Nothing End Try End Function End Class
Tambah satu Class baru dalam folder ‘Class’ dengan nama ‘clsBarang.vb’. Fungsi dari Class ini adalah untuk mengatur semua proses yang terjadi dalam tabel ‘tblBarang’ mulai dari properti-propertinya sampai proses CRUD yang terjadi dalam tabel tblBarang.
Kode untuk Class clsBarang.vb:
Imports System.Data.SqlClient Public Class clsBarang 'Barang memiliki beberapa properti, 'seperti Kode, Nama, Jumlah dan Harga... Private KdBarang As String Private NmBarang As String Private JmBarang As Integer Private HrBarang As Double 'Deklarasikan oBD sebaga Class dari clsDatabase Private oBD As New clsDatabase() 'Properti untuk Kode dari barang dengan tipe String Public Property KodeBarang() As String 'Ambil nilai dari kode barang Get 'Beritahukan kodenya.. Return KdBarang End Get 'Atur Kode barang dengan kode yang akan diberikan dalam nilai 'yang terdapat dalam 'value' yang bertipe String Set(ByVal value As String) 'Berikan kode barang dengan kode yang baru yang terdapat dalam nilai 'value' KdBarang = value End Set 'Dengan kata lain, Get: Mengambil dan memberitahukan hasilnya (memilih data). 'Set : Mengambil data yang baru dan menyimpan hasilnya (merubah data). End Property 'Penjelasan di bawah hampir sama dengan penjelasan di atas.. Public Property NamaBarang() As String Get Return NmBarang End Get Set(ByVal value As String) NmBarang = value End Set End Property Public Property JumlahBarang() As Integer Get Return JmBarang End Get Set(ByVal value As Integer) JmBarang = value End Set End Property Public Property HargaBarang() As Double Get Return HrBarang End Get Set(ByVal value As Double) HrBarang = value End Set End Property 'Fungsi untuk memilih data-data barang dari tabel tblBarang dengan kode yang telah ditentukan 'dari properti KodeBarang Public Function Pilih() As Boolean 'Deklarasikan 'proses' dengan nilai False 'befungsi untuk memberitahukan apakah suatu proses sukses dijalankan atau tidak. Dim proses As Boolean = False Try Dim odr As SqlDataReader Dim ssql As String 'Jika proses koneksi sukses, maka... If oBD.Connect() Then 'Masukkan perintah yang akan dieksekusi ke dalam variabel ssql If KodeBarang = Nothing Then ssql = "select * from tblBarang" Else ssql = String.Format("select * from tblBarang WHERE KdBarang='{0}'", KodeBarang) End If 'Eksekusi perintah dari ssql odr = oBD.ExecuteSql(ssql) 'Gunakan Fungsi Read() untuk membaca data yang didapat dari perintah SQL di atas 'Jika ada data yang terbaca, maka.. If odr.Read() Then 'Masukkan masing2 nilai dari Nama Barang, Jumlah, Harga dari dalam tabel tblBarang 'ke dalam variabel NmBarang, JmBarang, HrBarang NmBarang = CStr(odr("NmBarang")) 'Convert ke tipe string JmBarang = CInt(odr("Jumlah")) 'Convert ke tipe Integer HrBarang = CDbl(odr("Harga")) 'Convert ke tipe Double 'Proses telah sukses dijalankan, jadikan nilai 'proses' menjadi True proses = True End If 'Tutup koneksi ke database oBD.Disconnect() Else 'Jika proses koneksi gagal MsgBox("Tidak ada koneksi") End If Catch 'Jika terjadi kesalahan selama proses di atas, tampilkan pesan kesalahan MsgBox("Terjadi masalah dengan DataBase") 'Berikan nilai dari variabel 'proses', dalam hal ini masih False Return proses End Try 'Kembalikan nilai dari variabel 'proses', True atau False tergantung dari 'sukses atau tidak proses-proses di atas.. Return proses End Function 'Fungsi untuk menambah data barang yang baru Public Function Tambah() As Boolean Dim proses As Boolean = False Try Dim ODR As SqlDataReader Dim ssql As String If oBD.Connect() Then ssql = String.Format("INSERT INTO tblBarang(KdBarang, NmBarang, Jumlah, Harga)VALUES('{0}','{1}','{2}','{3}')", _ KdBarang, _ NmBarang, _ JmBarang, _ HrBarang) ODR = oBD.ExecuteSql(ssql) If IsNothing(ODR) Then MsgBox("Tidak ada yang dimasukkan") Else proses = True End If oBD.Disconnect() End If Catch MsgBox("Masalah terjadi pada DataBase") Return proses End Try Return proses End Function 'Fungsi untuk menghapus data barang dengan Kode barang yang ditentukan Public Function Hapus() As Boolean Dim proses As Boolean = False Try Dim ODR As SqlDataReader Dim ssql As String If oBD.Connect() Then ssql = String.Format("DELETE FROM tblBarang WHERE KdBarang ='{0}'", _ KdBarang) ODR = oBD.ExecuteSql(ssql) If IsNothing(ODR) Then MsgBox("Tidak ada yang dihapus") Else proses = True End If oBD.Disconnect() End If Catch MsgBox("Masalah terjadi dalam database") Return proses End Try Return proses End Function 'Fungsi untuk mengupdate data barang dengan Kode barang yang telah ditentukan Public Function Update() As Boolean Dim proses As Boolean = False Try Dim ODR As SqlDataReader Dim ssql As String If oBD.Connect() Then ssql = String.Format("UPDATE tblBarang SET NmBarang='{0}',Jumlah='{1}',Harga='{2}' WHERE (KdBarang ='{3}')", _ NmBarang, _ JmBarang, _ HrBarang, _ KdBarang) ODR = oBD.ExecuteSql(ssql) If IsNothing(ODR) Then MsgBox("Tidak ada data yang diUpdate") Else proses = True End If oBD.Disconnect() End If Catch MsgBox("Masalah dengan Database") Return proses End Try Return proses End Function End Class
5. Menambah Kontrol DataGridView
Pertama kita akan menambah sebuah kontrol ‘DataGridView’ untuk menampilkan data-data dari tabel barang ke dalam bentuk Grid menggunakan kontrol DataGridView.
Munculkan panel Toolbox (jika belum muncul, tekan kombinasi tombol CTRL+W, X), pilih kontrol DataGridView dari panel Toolbox dan geser ke area Form1.
Kontrol DataGridView akan muncul di dalam Form dengan nama DataGridView1, sesuaikan posisinya.
Berikut kita akan mengatur beberapa properti dari DataGridView1 yang barusan kita buat. Klik DataGridView1 dan pada panel ‘Properties’ (CTRL+W, P) ubah beberapa properti agar user tidak bisa menambah baris/row, user tidak bisa menghapus baris/row, user tidak bisa mengatur posisi baris/row dan user tidak bisa merubah ukuran baris/row menjadi ‘False’ dan juga SelectionMode = FullRowSelect seperti pada gambar.
6. Menambah Tombol dan TextBox
Setelah DataGridView1 telah dibuat, selanjutnya kita tambahkan beberapa tombol untuk menjalankan proses-proses penambahan data, perubahan data, dan penghapusan data dari dalam tabal barang.
Geser kontrol Button dari panel ToolBox ke area Form1 (caranya sama dengan proses untuk menambah kontrol DataGridView sebelumnya).
Buat 5 buah Button..
Dengan nama masing-masing : cmdBaru, cmdEdit, cmdSimpan, cmdHapus dan cmdTutup.
Dengan teks masing-masing : Baru, Edit, Simpan, Hapus, dan Tutup.
[klik gambar untuk memperbesar]
Tambahkan juga beberapa TextBox untuk memasukkan data dan beberapa label :
txtKode, txtNama, txtJumlah, txtHarga
lblKode, lblNama, lblJumlah, lblHarga
Atur posisi dari tiap kontrol seperti gambar di atas.. ^^
7. Menulis Kode
Akan dilanjutkan pada pembahasan berikutnya.. ^^ (Bersambung….). Semoga sampai di sini sudah sedikit terbuka pemahaman dalam proses-proses pembuatan aplikasi menggunakan Visual Studio.
Download Project Solution : Tutorial Visual Basic .NET - Proses CRUD (4682)
Maaf atas keterlambatan dalam membuat lanjutan dari tutorial operasi CRUD ini. Sudah setahun lebih.. :D Anyway, ini merupakan versi revisi dari ...
Sudah bukan merupakan rahasia lagi bahwa suatu aplikasi memerlukan pengamanan untuk User dan Password yang digunakan. Rahasia yang mungkin belum d ...
Suatu thread merupakan suatu alur instruksi yang di eksekusi. Program yang melakukan lebih dari satu alur instruksi biasa disebut melakukan multit ...
Cara ini sangat efektif mengingat banyaknya Sistem Operasi bajakan yang didistribusikan dalam format .ISO banyak beredar di internet. Pengguna ...
PHP merupakan salah satu bahasa scripting yang cukup populer untuk digunakan dalam pengembangan web. PHP bersifat Open Source, artinya kita tidak ...
Bagus bgt neh themenya... sugoooiii.. Mklum newbi
bro bgus kli
ciamik habis....... gan!!! thanx banget, semoga me
thaks yaaa gan sangat bermanfaat skali nih .......
pengen blajar banyak deh dengan admin idfreelance.
Ajax alasan blog C# Cara datang Desain Download Ebook font Gambar gratis Grunge HDR Icon idfreelance inspirasi intro JavaScript jquery Keamanan Key Klien Kreatif Mengenali menggunakan Multithreading Pemrograman Pernikahan Photoshop PHP Programmer rahasia Script Software sumber Theme Thread Tip trik Tutorial VB Vista website Wordpress
Daftar link sahabat...
-Berbagi Ilmu -Blog Ooyi -Bobby Rahman -Caraku-Caramu -Ferditya Nugraha -Hadyan Fariz -Hidrogroup -I Putu Gusti -IndoSourceCode -Interaktif Tutorial -Jafriyal Bule -Medan Gamer -PolizeIRC -Rey’s Blog -Tech Review -Wawan
agan ada yang tau ngak
cara memanggil aplikasi dari visual basic
[...] kode berikut ke dalam dokumen clsDatabase.vb : view plaincopy to [...]
[...] kode berikut ke dalam dokumen clsDatabase.vb : view plaincopy to [...]
Kok gak ada kelanjutannya???? Tanggung amat nih tutorial. Padahal tutorialnya bagus, jelas dan mudah dipahami.
Tanya mas!!!!
Untuk mengambil nilai sebuah textbox,combobox atau mungkin juga cekbok dari aplikasi lain yang udah exist(aplikasi orang lain). caranya gimana mas. Tolong contoh sederhana saja ya mas.
misal, kita buat sebuah textbox yang menampilkan nilai pada monitor kalkulator bawaan windows.
Trims tas semua tutornya, Berkat tutor di atas saya berhasil membuat aplikasi CRUDdatabase yang lumayan bagus.
Numpang belajar.
mana gan tutorial lanjutannya? tolong dongs. help mee. masih newbie.
ehm. nanya kalo mau insert database, kodingannya gimana? perlu pake koneksi database ga? terus kalo masukin ke arah tabel nya gimana cara deklarasi atau penulisaannnya? terimakasih gan.
Om mana yang seri 2 nya? Tnxssss berat lo!
lanjutannya mana juragan?
di tunggu ach…..
oke cuy……….btw web ni bagus bagett templet nya….bisa di buat tutorialnya juga ga??
Om mana yang seri 2 nya? Tnxssss berat lo!
Mas… Kok gk bisa di download… Tolong dong dibantu..
Bagus bener nich Tutornya… saya dapat memahami codingnya..
Tks
Mangtabs gan,,useful banget tuh tutorialnya..
suskses terus buat agan…!
Kapan terealisasinya bro Bobi? Btw, tutorial nya masih digodog, cuman waktu luangnya aja yg lom ada ampe sekarang.. ^-*
Lanjutan CRUDnya mana bos?
Aku ngebet banget lho Mas dengan VB……….?
Sambungannya Ike tunggu ya…???
Suksees .!
siiip kiye tutoriale…apik nemen…( ini tutorialnya siiip…bagus sekali…)
step by step nya jelas…
mas..kapan ? sambungannya dimuat lagi ( bagian ke 2 dan seterusnya ?
mas kalo pake VS 2005 bisa dak ya…? soalnya di kompku install VS 2005
SUKSES SELALU MAS…
MATUR NUWUN
ini pake modul ga ya?
sintax “select” itu sama ga dengan “search”?
makasih…
@ IDFreelance.net
gue lihat ada badge DoFollow di sidebar kamu tuh, tapi kok masih ajah rel=”nofollow” yah.. control+u lalu control+f .. yang ada nofollow semua linknya..
sebelumny, sori jadi nanya2 terus.hehe
maklum ,bner2 pemula nh.haha
gw bingung am yg penjelasan bagian ini: (thx b4)
“Sebelum lanjut membuat Class, kita akan menambah sedikit pengaturan untuk project ini. Yang akan ditambahkan adalah pengaturan untuk ConnectionString (String koneksi yang akan digunakan agar bisa terhubung dengan Database DataBarang).
Pilih menu ‘Project > DataBarang Properties’. Masuk ke Tab ‘Settings’ dan masukkan ConnectionString pada kolom ‘Name’ dengan Type String dan Scope pilih Application. Pada bagian Value, isikan string koneksi berikut dan klik tombol Save untuk menyimpan :
Data Source=(local)\SQLEXPRESS;Initial Catalog=DataBarang;Integrated Security=True”
menu ‘project ‘ itu ada di sebelah mana ya? tq..
Belum dilanjutkan, masih ada yang harus dikerjakan. ^^
Menu Project : Tekan ALT+P
mw tanya lagi.hehe
kalo bikin kyk contoh di atas, tapi tabel nya lebih dari satu gmn?? dijadiin beberapa form? tq ya.. ^^
ini udh ada lanjutan nya blom?? thx.. soalnya butuh buat tugas ASAP.hehe
Pasti Bro, nanti ditunggu aja… Tutorial selanjutnya mulai masuk ke coding (Tutorial ini juga udah ada codingnya – maklum, posting sambil dikerjain di VS).
Hebat.. untuk tutor Tutorial Operasi CRUD pada Visual Basic .NET. Nanti kabarin ya untuk tutor selanjutnya.. Sukses Bro..
Hadi