STORED PROCEDURE DENGAN VB.NET 2008 DAN SQL SERVER 2005
IMPLEMENTASI STORED PROCEDURE DENGAN
VB.NET 2008 DAN SQL SERVER 2005
Hai, sobat bloger semua….!!!
Pada kesempatan ini saya akan membahas cara menggunakan stored procedure di vb.net 2008. Sebelumnya sobat-sobat tau gak stored procedure itu apa…???
OK, kalau belum tau, jadi Stored procedure merupakan sekumpulan perintah-perintah SQL yang tersimpan dengan nama tertentu dan diproses sebagai sebuah kesatuan. Bisa dikatakan sebuah sub program yang tersimpan didalam database. Stored procedure dapat melakukan:
a. Menerima parameter sebagai input dan mengembalikan nilai-nilai dalam bentuk
parameter output kepada yang memanggilnya.
b. Mengandung perintah-perintah program yang melakukan operasi di dalam database,
termasuk memanggil prosedur lainnya.
c. Mengembalikan suatu nilai status pada pemanggilnya untuk mengindikasikan berhasil
atau gagalnya prosedur.
Langsung aja ke pokok pembahasan, pertama-tama hal yang harus anda lakukan adalah membuat database, disini saya membuat database dengan nama db_siswa untuk lebih jelasnya bisa dilihat dibawah ini :
--UNTUK MEMBUAT DATABASE
CREATE DATABASE DB_SISWA
--UNTUK MEMBUAT TABEL
CREATE TABLE TB_SISWA (
NIS INT PRIMARY KEY,
NAMA VARCHAR(50),
ALAMAT VARCHAR(100),
GENDER VARCHAR(20),
TGL_LAHIR VARCHAR(30)
)
|
Setelah membuat database dan tabel, langkah selanjutnya adalah membuat stored procedure, disini saya membuat 3 stored procedure yaitu untuk menambah, mengupdate, dan menghapus data untuk lebih jelasnya bisa dilihat dibawah ini :
--STORED PROCEDURE INSERT
USE db_siswa
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[tambah_siswa]--ini nama stored procedure-nya
(@nis Varchar(30), @nama Varchar(30), @alamat Varchar(30), @genderVarchar(30), @tgl_lahir Varchar(30))
AS
BEGIN
INSERT INTO tb_siswa VALUES (@nis, @nama, @alamat, @gender,@tgl_lahir)
END;
|
--STORED PROCEDURE UPDATE
USE db_siswa
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[update_data_siswa]--ini nama stored procedure-nya
(@nis Varchar(30), @nama Varchar(30), @alamat Varchar(30), @genderVarchar(30), @tgl_lahir Varchar(30))
AS
BEGIN
UPDATE tb_siswa SET nama=@nama, alamat=@alamat, gender=@gender,tgl_lahir=@tgl_lahir WHERE nis=@nis
END;
|
--STORED PROCEDURE DELETE
USE db_siswa
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[hapus_data_siswa]--ini nama stored procedure-nya
(@nis Varchar(30))
AS
BEGIN
DELETE FROM tb_siswa WHERE nis=@nis
END;
|
Ok, kalau sudah sekarang Vb.Net nya, buat projek baru nama projeknya terserah, setelah itu desain form seperti gambar berikut :
Komponen-komponen dari form tersebut adalah : 5 Label, 3 TextBox, RichTextBox, ComboBox, Button, dan ListView, kalau sudah tambahkan Module didalam projek dengan cara klik menu Project dan pilih Add Module nama modulenya terserah, setelah itu tambahkan kode dibawah ini didalam modulenya :
Imports System.Data.SqlClient
Module Module1
Public koneksi As SqlConnection = Nothing
Public Sub konek_db()
Dim server As String
server = "server=W-UNLIMITED-PC\SQLEXPRESS;Initial Catalog=db_siswa;Integrated Security=True"
'Untuk server=W-UNLIMITED-PC\SQLEXPRESS sesuaikan dengan nama server di Sql Server di komputer anda
koneksi = New SqlConnection(server)
koneksi.Open()
End Sub
End Module
|
Kalau sudah, double klik form yang sudah di buat tadi, dan masukkan code berikut diluar code untuk formnya / bisa dibagian paling atas di bawah Public Class Form1
Sub tampil()
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
RichTextBox1.Clear()
ComboBox1.Text = "--- Pilih Gender ---"
TextBox1.Focus()
ListView1.Items.Clear()
konek_db()
Dim data As New SqlClient.SqlCommand("Select * From tb_siswa")
Dim reader As SqlClient.SqlDataReader
data.Connection = koneksi
reader = data.ExecuteReader
Dim i As Integer = 0
Do While reader.Read
ListView1.Items.Add(reader("nis"))
ListView1.Items(i).SubItems.Add(reader("nama"))
ListView1.Items(i).SubItems.Add(reader("alamat"))
ListView1.Items(i).SubItems.Add(reader("gender"))
ListView1.Items(i).SubItems.Add(reader("tgl_lahir"))
i = i + 1
Loop
End Sub
|
Double klik formnya lagi dan masukkan code :
tampil()
kemudian double klik button simpan dan masukkan code berikut :
konek_db()
Dim sql_simpan As SqlClient.SqlTransaction = koneksi.BeginTransaction
Dim cr_command As SqlClient.SqlCommand = koneksi.CreateCommand
Try
With cr_command
.CommandText = "tambah_siswa" 'ini untuk memanggil nama stored procedure yang ada didalam sql server
.CommandType = CommandType.StoredProcedure
.Connection = koneksi
.Transaction = sql_simpan
.Parameters.Add("@nis", SqlDbType.VarChar, 30).Value = TextBox1.Text
.Parameters.Add("@nama", SqlDbType.VarChar, 50).Value = TextBox2.Text
.Parameters.Add("@alamat", SqlDbType.VarChar, 50).Value = RichTextBox1.Text
.Parameters.Add("@gender", SqlDbType.Char, 30).Value = ComboBox1.Text
.Parameters.Add("@tgl_lahir", SqlDbType.VarChar, 20).Value = TextBox3.Text
.ExecuteNonQuery()
End With
sql_simpan.Commit()
MsgBox("Data Berhasil di Simpan")
tampil()
Catch ex As Exception
MsgBox("Failed", MsgBoxStyle.Critical, "Errors")
End Try
|
Lakukan cara yang sama pada button Update dan masukkan code berikut :
konek_db()
Dim sql_simpan As SqlClient.SqlTransaction = koneksi.BeginTransaction
Dim cr_command As SqlClient.SqlCommand = koneksi.CreateCommand
Try
With cr_command
.CommandText = "update_data_siswa"
.CommandType = CommandType.StoredProcedure
.Connection = koneksi
.Transaction = sql_simpan
.Parameters.Add("@nis", SqlDbType.VarChar, 30).Value = TextBox1.Text
.Parameters.Add("@nama", SqlDbType.VarChar, 50).Value = TextBox2.Text
.Parameters.Add("@alamat", SqlDbType.VarChar, 50).Value = RichTextBox1.Text
.Parameters.Add("@gender", SqlDbType.Char, 30).Value = ComboBox1.Text
.Parameters.Add("@tgl_lahir", SqlDbType.VarChar, 20).Value = TextBox3.Text
.ExecuteNonQuery()
End With
sql_simpan.Commit()
MsgBox("Data Berhasil di Update")
tampil()
Catch ex As Exception
MsgBox("Failed", MsgBoxStyle.Critical, "Errors")
End Try
|
Dan tambahkan code berikut didalam button Hapus
If TextBox1.Text = "" Then
MsgBox("Pilih Data Dulu", MsgBoxStyle.Critical,"Attention")
Else
konek_db()
Dim sql_simpan As SqlClient.SqlTransaction = koneksi.BeginTransaction
Dim cr_command As SqlClient.SqlCommand = koneksi.CreateCommand
Dim hapus As Int16
Try
With cr_command
hapus = MsgBox("Benar record ini akan dihapus " & TextBox1.Text & "?", MsgBoxStyle.OkCancel, "Delete record")
Select Case hapus
Case vbCancel
Exit Sub
Case vbOK
.CommandText = "hapus_data_siswa"
.CommandType = CommandType.StoredProcedure
.Connection = koneksi
.Transaction = sql_simpan
.Parameters.Add("@nis", SqlDbType.VarChar, 30).Value = TextBox1.Text
.ExecuteNonQuery()
End Select
End With
sql_simpan.Commit()
MsgBox("Data Berhasil di Hapus")
tampil()
Catch ex As Exception
MsgBox("Failed", MsgBoxStyle.Critical, "Errors")
Finally
sql_simpan.Dispose()
cr_command.Dispose()
koneksi.Close()
End Try
End If
End Sub
|
Jika sudah klik listview sekalu aja, dan klik tanda di bagian properties dan pilih MouseClick seperti pada gambar berikut :

Dan masukkan code berikut kedalam event MouseClick :
TextBox1.Text = ListView1.SelectedItems(0).SubItems(0).Text
TextBox2.Text = ListView1.SelectedItems(0).SubItems(1).Text
RichTextBox1.Text = ListView1.SelectedItems(0).SubItems(2).Text
ComboBox1.Text = ListView1.SelectedItems(0).SubItems(3).Text
TextBox3.Text = ListView1.SelectedItems(0).SubItems(4).Text
|
Dan akhirnya selesai juga dehhh, silahkan dijalankan programnya dan semoga tulisan ini bisa bermanfaat untuk sobat-sobat bloger semua. Amin
JANGAN PERNAH BERHENTI UNTUK MENGGALI POTENSI YANG ADA DI DALAM DIRI SENDRI




Comments
Post a Comment