Sebuah Stored Procedure adalah kode SQL siap pakai yang disimpan secara khusus, sehingga kita dapat menggunakan kembali kode tersebut lain waktu. Jadi jika kita berpikir untuk menggunakan query yang kita tulis lagi lain waktu, daripada harus menulis query berulang – ulang, akan lebih abik jika kita menyimpannya dalam sebuah Stored Procedure. Sehingga pada saat kita perlu, kita bisa langsung memanggil Stored Procedure untuk mengeksekusi kode tersebut.
Selain menjalankan kode SQL yang sama lagi, kita juga memiliki kemampuan untuk melewatkan parameter untuk prosedur yang tersimpan, jadi prosedur dapat bertindak sesuai / berdasarkan pada nilai-nilai parameter yang dilewatkan. Apa yang dikerjakan oleh prosedur bisa kita sesuaikan dengan apa kebutuhan kita.
Ada berbagai pilihan yang bisa digunakan untuk membuat Stored Procedure. Dalam beberapa topik selanjutnya kita akan membahas membuat Stored Procedure sederhana untuk pilihan yang lebih maju yang dapat digunakan saat membuat Stored Procedure.
Seperti disebutkan diatas, Stored Procedure tidak lebih dari kode SQL yang disimpan yang akan kita gunakan berulang-ulang. Dalam contoh ini kita akan melihat bagaimana membuat Stored Procedure sederhana.
Sebelum kita membuat Stored Procedure, kita perlu tahu apa hasil akhir kita ( tujuan kita ) , apakah kita memilih data, memasukkan data, atau yang lain.Dalam contoh sederhana ini kita hanya akan memilih semua data dari tabel person.address yang disimpan dalam database AdventureWorks.
Berikut ini contohnya :
SELECT * FROM Person.Address
To create a stored procedure to do this the code would look like this:
USE AdventureWorks
GO
CREATE PROCEDURE dbo.uspGetAddress
AS
SELECT * FROM Person.Address
GO
Untuk memanggil prosedur:
EXEC dbo.uspGetAddress
-- or
EXEC uspGetAddress
--or just simply
uspGetAddress
Ketika membuat Stored Procedure,kita dapat menggunakan CREATE PROSEDUR atau CREATE PROC. Setelah nama Stored Procedure, kita perlu menggunakan kata kunci "AS" dan kemudian sisanya hanya kode SQL biasa yang akan kita eksekusi.
Satu hal yang perlu diperhatikan adalah bahwa Anda tidak dapat menggunakan kata kunci "GO" dalam Stored Procedure. Setelah compiler SQL Server melihat "GO", server akan menganggap bahwa hal itu adalah perintah khusus / reserved word.
Kita juga tidak dapat mengubah konteks basis data dalam Stored Procedure seperti menggunakan "USE dbname" alasan untuk ini adalah karena ini akan menjadi batch terpisah padahal Stored Procedure adalah kumpulan dari satu batch pernyataan.
Tidak ada komentar:
Posting Komentar