Cara Membuat SQL Stored Procedure dan Contohnya

Yuk, pelajari lebih lanjut tentang cara membuat SQL Stored Procedure sekaligus contohnya di sini!
Farhan Fauzan Muharam
June 21, 2023
6
min read

Mau Belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!
DAFTAR FULL PROGRAMCOBA COURSE GRATIS

Overview

Dengan SQL stored procedure, kamu bisa membuat script yang bisa dipakai berulang kali dan berjalan secara otomatis tanpa harus dieksekusi satu per satu. Simak definisi, syntax, cara membuat, dan contohnya di artikel ini.

Pernah buat sebuah script SQL untuk mengambil data tertentu dan kamu pakai berulang kali? Nah, bagaimana cara supaya script tersebut bisa dipakai berulang kali dan secara otomatis berjalan dengan sendirinya tanpa harus mengeksekusi satu-satu? 

Maka kamu membutuhkan stored procedure. Tapi apa itu stored procedure? Mari kita bahas di artikel ini.

SQL Stored Procedure, Apa Itu?

Stored procedure merupakan sebuah fungsi dari SQL untuk menyimpan syntax SQL dan dapat digunakan berulang kali tanpa mengubah isi dari script tersebut. Biasanya, stored procedure digunakan untuk membuat sebuah tabel atau database yang digunakan berulang kali.  

Jadi, di dalam stored procedure ini kamu bisa menyimpan banyak query dan menjalankannya secara bersamaan dalam satu kali eksekusi.

Contoh dari penggunaan stored procedure adalah ketika seorang data analyst ingin membuat sebuah database dari beberapa tabel. Tetapi tabel tersebut merupakan sebuah tabel yang dibentuk dengan menggunakan script SQL. 

Maka, untuk menghemat waktu sembari dia mengerjakan pekerjaan lain, ia membuat sebuah stored procedure yang berisi script pembuatan tabel-tabel yang dibutuhkan untuk menyusun database tersebut.

Syntax SQL untuk Membuat Stored Procedure

Dalam membuat sebuah stored procedure, kamu harus mempersiapkan dulu statement SQL yang akan digunakan. Nantinya, stored procedure ini akan menjalankan statement SQL tersebut. Secara sederhana, stored procedure dapat dibentuk dalam syntax seperti berikut ini:

Setiap pembuatan stored procedure selalu diawali dengan command BEGIN dan END. BEGIN menunjukkan dimulainya pekerjaan dari stored procedure dan END menunjukkan akhir dari pekerjaan stored procedure

Syntax ini cukup dijalankan satu kali saja, karena syntax ini bertujuan untuk membuat dan menyimpan stored procedure. Kemudian, sebagai perintah untuk menjalankan stored procedure, cukup menggunakan command EXEC seperti pada contoh di bawah ini.

Dalam pembuatan stored procedure, dapat juga menggunakan parameter-parameter yang sudah ditentukan, seperti tanggal atau ID dari sebuah produk. Dengan menentukan parameter tersebut, stored procedure bisa diatur untuk secara otomatis mengambil data berdasarkan parameter tersebut. Atau kamu yang menentukan data yang diambil berdasarkan parameter pada saat menggunakan command EXEC. 

Untuk syntax-nya adalah seperti berikut.

Apabila ada penciptaan, maka ada juga penghapusan. Untuk melakukan penghapusan stored procedure dapat menggunakan syntax berikut ini.

Contoh Pembuatan Stored Procedure

Contoh 1

Untuk contoh yang pertama, kita akan membuat sebuah stored procedure sederhana yang tidak menggunakan parameter. Pada bagian SQL statement, kita hanya perlu menuliskan SELECT * FROM customers karena kita akan mengambil semua data yang ada di tabel customers.

Kemudian pada command EXEC, dapat dibuat seperti berikut ini.

Contoh 2

Dalam contoh selanjutnya, stored procedure bernama 'get_customers_by_country' dibuat dengan satu parameter 'country' yang digunakan untuk memfilter hasil pencarian data pada tabel 'customers'. Ketika stored procedure ini dipanggil, kamu dapat memberikan nilai yang berbeda untuk parameter 'country' dan stored procedure akan mengembalikan semua data pelanggan yang sesuai dengan kondisi tersebut.

Berikut adalah cara memanggil stored procedure dengan parameter di atas:

Dalam contoh di atas, stored procedure 'get_customers_by_country' dipanggil dengan memberikan nilai 'USA' pada parameter 'country'. Stored procedure akan mengembalikan semua data pelanggan dari 'USA'.

{{COMPONENT_IDENTIFIER}}

Contoh 3

Dalam contoh di bawah, stored procedure bernama 'get_orders_by_date_range' dibuat dengan dua parameter 'start_date' dan 'end_date' yang digunakan untuk memfilter hasil pencarian data pada tabel 'orders' berdasarkan tanggal order. 

Ketika stored procedure ini dipanggil, kamu dapat memberikan nilai yang berbeda untuk parameter 'start_date' dan 'end_date', dan stored procedure akan mengembalikan semua data order yang terjadi pada rentang waktu tersebut.

Berikut adalah cara memanggil stored procedure dengan parameter tanggal di atas:

Dalam contoh di atas, stored procedure 'get_orders_by_date_range' dipanggil dengan memberikan nilai '2022-01-01' pada parameter 'start_date' dan '2022-12-31' pada parameter 'end_date'. Stored procedure akan mengembalikan semua data order yang terjadi antara 1 Januari 2022 dan 31 Desember 2022.

Penutup

Stored procedure dapat digunakan apabila kamu mempunyai pekerjaan yang menggunakan script SQL yang sama untuk berulang kali atau perlu untuk melakukan otomasi. 

Kamu juga bisa menambahkan parameter-parameter untuk stored procedure kamu sehingga data yang dihasilkan sesuai dengan keinginan yang kamu ingin ambil.

Farhan Fauzan Muharam
Geological engineering graduate with experience in dam construction and now switching career as Data Analyst in banking institution

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Artikel Lainnya

Mau belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!
Menu

Mulai karirmu dalam

Data Analytics

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

Mau Belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

DAFTAR FULL PROGRAM

Mau Belajar

Data Analytics

?