Cara Membuat Prosedur Tersimpan di PostgreSQL

Cara Membuat Prosedur Tersimpan Di Postgresql



Dengan PostgreSQL, dimungkinkan untuk membuat prosedur tersimpan yang menentukan berbagai rutinitas yang harus dijalankan saat dipanggil. Rutinitas ini terdiri dari pernyataan SQL yang melakukan tugas yang ditentukan pada database Anda. Misalnya, Anda bisa membuat prosedur tersimpan yang memperbarui nilai dalam tabel Anda saat Anda memanggilnya.

Prosedur tersimpan membantu pengoptimalan basis data dan meningkatkan penggunaan kembali. Daripada harus menjalankan kueri yang sama, Anda bisa membuat tugas sebagai prosedur tersimpan yang akan Anda panggil kapan pun diperlukan. Anda akan mempelajari segala sesuatu tentang prosedur tersimpan di akhir posting ini.

Bekerja dengan Prosedur Tersimpan di PostgreSQL

Sebagai pengguna PostgreSQL, Anda mungkin memperhatikan bahwa fungsi PostgreSQL tidak mengeksekusi transaksi. Meskipun dimungkinkan untuk membuat transaksi, melakukan atau mengembalikannya ke keadaan sebelumnya tidak mungkin dilakukan. Namun, keterbatasan ini dapat diatasi dengan menggunakan prosedur tersimpan.







Berikut sintaks dasar untuk membuat prosedur tersimpan di PostgreSQL:



BUAT ATAU GANTI PROSEDUR procedure_name(

parameter[s] tipe_data

)

BAHASA plpsql;

SEBAGAI $$

MENYATAKAN

variabel_jika_tipe_data apa pun

MULAI

logika

AKHIR;

$$

Hal utama yang perlu diperhatikan dari sintaks yang diberikan adalah “procedure_name” yang merupakan nama yang akan Anda gunakan untuk prosedur tersimpan, parameter yang ingin Anda sertakan dan tipe datanya, dan logika yang terutama merupakan pernyataan SQL.



Mari kita berikan tiga contoh untuk membantu Anda memahami cara membuat prosedur tersimpan di PostgreSQL.





Contoh 1: Prosedur Tersimpan untuk Menghitung Kuadrat Suatu Bilangan

Untuk contoh pertama, kami membuat prosedur tersimpan yang menggunakan pernyataan “RAISE NOTICE” sebagai cara untuk mencetak output ke terminal. Prosedur tersimpan mengambil nilai integer yang Anda berikan saat memanggilnya dan menghitung kuadratnya.

Inilah cara kami membuat prosedur tersimpan:



Kami memberi nama parameter kami sebagai 'num1', dan itu adalah bilangan bulat. Untuk bagian logikanya, kita mendefinisikan bagaimana ia mendapatkan kuadrat “angka1” dan menyimpannya sebagai variabel kuadrat. Saat kami menjalankan perintah, kami mendapatkan output “CREATE PROCEDURE” yang mengonfirmasi bahwa kami berhasil membuat prosedur tersimpan.

Tugas selanjutnya adalah memanggil prosedur dan memberikan argumen yang diharapkan.

PANGGILAN nama_prosedur(argumen);

Anda akan mendapatkan keluaran CALL yang menunjukkan bahwa prosedur tersimpan telah dijalankan, dan kita mendapatkan keluaran yang diharapkan, dalam hal ini, adalah kuadrat dari argumen yang kita tambahkan.

Contoh 2: Prosedur Tersimpan untuk Memasukkan Nilai ke dalam Entri Tabel

Dua contoh berikut menunjukkan cara membuat prosedur tersimpan yang berfungsi dengan tabel database. Mari segera buat tabel “siswa” yang akan kita kerjakan.

Untuk contoh ini, kami membuat prosedur tersimpan yang memungkinkan pengguna memasukkan nilai ke dalam tabel yang baru dibuat. Perhatikan bagaimana kita menentukan parameter yang kita harapkan untuk ditambahkan sebagai argumen ketika kita memanggil prosedur tersimpan. Selain itu, kami mendefinisikan logika yang mengambil argumen tambahan dan mengeksekusi pernyataan INSERT SQL ke tabel “siswa”.

Kita dapat memeriksa prosedur tersimpan yang tersedia dengan menjalankan perintah berikut:

\df

Prosedur tersimpan pertama yang dapat kita lihat dari output berikut adalah “add_student” yang telah kita buat sebelumnya.

Sekarang, panggil prosedur tersimpan untuk menjalankannya. Gambar berikut menunjukkan bagaimana kita memiliki tabel kosong, tapi kita memanggil prosedur tersimpan untuk menambahkan siswa pertama:

Jika kita membuat daftar nilai dalam tabel kita, perhatikan bagaimana argumen yang kita tambahkan dengan perintah prosedur panggilan adalah nilai untuk siswa pertama dalam tabel kita. Begitulah cara Anda membuat prosedur tersimpan untuk memasukkan nilai ke dalam tabel.

Perhatikan bahwa saat membuat prosedur tersimpan, parameter yang Anda tentukan harus sesuai dengan yang diharapkan dalam tabel Anda untuk menghindari kesalahan. Apalagi tipe datanya harus cocok.

Contoh 3: Prosedur Tersimpan untuk Memperbarui Entri Tabel

Selanjutnya, mari buat prosedur tersimpan lain yang memperbarui entri tabel. Jika Anda ingin memiliki cara cepat untuk memperbarui nilai dalam tabel kami, Anda dapat membuat prosedur pembaruan tersimpan sebagai berikut:

Tentukan kolom mana yang ingin diupdate menggunakan kata kunci WHERE dan nilai baru menggunakan kata kunci SET. Anda kemudian harus menambahkan kata kunci COMMIT untuk mempertahankan perubahan.

Mari kita panggil prosedur pembaruan tersimpan dan tambahkan argumen yang diharapkan: “student_id” dan kursus baru.

Jika kami mencantumkan entri dalam tabel, kami dapat memverifikasi bahwa kami memiliki kursus terbaru untuk siswa tertentu yang kami targetkan. Begitulah cara kerja prosedur pembaruan tersimpan.

Kesimpulan

Anda dapat membuat prosedur tersimpan apa pun di PostgreSQL. Anda hanya perlu memahami sintaks yang harus diikuti dan kemudian menentukan logika Anda untuk prosedur tersimpan. Dari sana, panggil prosedur tersimpan dan verifikasi bahwa prosedur tersebut telah dijalankan seperti yang diharapkan. Postingan ini menjelaskan tentang prosedur tersimpan di PostgreSQL dan memberikan contoh cara membuatnya.