Kita buat sebuah stored procedure sederhana untuk menampilkan nama pegawai berdasar nomor identitasnya.
IDPEGAWAI | NAMA | JABATAN | KOMISI |
---|---|---|---|
5001 | MOZA | KASIR | |
5007 | TEJA | SALESMAN | 300000 |
5101 | WAHYU | SALESMAN | 400000 |
5104 | DESY | MANAGER | |
5111 | ECKO | SALESMAN | 1500000 |
5121 | ARI | MANAGER | |
5287 | RAYMOND | MANAGER | |
5288 | SONY | KASIR | |
5297 | HUTOMO | PEMILIK | |
5299 | GUNADI | SALESMAN | |
5376 | SANDY | KASIR | |
5378 | ERICK | KASIR | |
5380 | LINDON | ANALYST | |
5400 | STEFANO | KASIR |
1
2
3
4
5
6
7
| CREATE PROCEDURE GetNamaPegawai @ID_Pegawai CHAR (4), @Nama_Pegawai VARCHAR (60) OUT AS BEGIN SET @NamaPegawai = ( SELECT NAMA FROM PEGAWAI WHERE IDPEGAWAI= @ID_Pegawai); END |
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| ' ----- Menghubungkan ke database. Dim connectionString As String = _ "Data Source=Chandra\SQLEXPRESS;" & _ "Initial Catalog=Databaseku;Integrated Security=true" Dim Database As New SqlClient.SqlConnection(connectionString) Databaseku.Open() ' ----- Membuat command dasar Dim Commandku As New SqlClient.SqlCommand() Commandku.CommandType = CommandType.StoredProcedure Commandku.Connection = Databaseku Commandku.CommandText = "GetNamaPegawai" ' ----- Tambahkan parameter input. Commandku.Parameters.AddWithValue( "@ID_Pegawai" , "5287" ) ' ----- Tambahkan parameter output. Dim outParam As SqlClient.SqlParameter = _ Commandku.Parameters.Add( _ "@Nama_Pegawai" , SqlDbType.VarChar, 60) outParam.Direction = ParameterDirection.Output ' ----- Menjalankan stored procedure. Commandku.ExecuteNonQuery() ' ----- Menampilkan hasil pemanggilan stored procedure. MsgBox(outParam.Value) ' ----- Bersih - bersih. Commandku = Nothing Databaseku.Close() Databaseku.Dispose() |
Stored procedure dipanggil dengan command object standar, tapi tidak menggunakan SQL sebagai command textnya anda cukup menyediakan nama stored procedurenya. Semua parameter input dan output ditambahkan melalui parameter object. Nama yang digunakan di setiap parameter harus sesuai dengan nama yang digunakan dalam stored procedure.
Parameter input sederhana dapat ditambahkan dengan metode AddWithValue() :
1
| Commandku.Parameters.AddWithValue( "@ID_Pegawai" , "5287" ) |
1
2
3
4
| Dim outParam As SqlClient.SqlParameter = _ Commandku.Parameters.Add( _ "@Nama_Pegawai" , SqlDbType.VarChar, 60) outParam.Direction = ParameterDirection.Output |
- ParameterDirection.Input
- ParameterDirection.Output
- ParameterDirection.InputOutput
- ParameterDirection.ReturnValue
1
| Commandku.ExecuteNonQuery() |