Mengenal Stored Procedures Di Database MySQL

Sebagian besar dari kita cukup terbiasa dengan pengaturan normal untuk membangun database sebuah aplikasi, seperti: membuat database, membuat tabel, mengatur indeks, CRUD data, menampilkan permintaan dari sisi klien dan melakukan pemrosesan lebih lanjut jika diperlukan. Alur kerja itu bekerja dengan baik, namun dalam banyak kasus ada satu aspek penting dari pemrograman database yang hilang, yaitu: stored procedures.

Hampir semua sistem database relasional mendukung stored procedures, MySQL 5 tentunya telah mendukung stored procedures. Stored procedures adalah metode untuk mengenkapsulasi tugas secara berulang. Sehingga memungkinkan kita untuk mendeklarasikan variabel, mengontrol aliran data dan teknik pemrograman yang berguna lainnya. Stored procedures dapat dipanggil oleh trigger, ataupun oleh stored procedures lainnya, dan aplikasi seperti Java, Python, PHP. Stored procedures yang memanggil dirinya sendiri dikenal sebagai recursive stored procedures . Sebagian besar sistem manajemen basis data mendukung recursive stored procedures.

Kelebihan Stored Procedures

* Berbagi logic dengan aplikasi lainnya. Stored procedures merangkum fungsionalitas untuk memastikan bahwa akses data dan manipulasi koheren antara aplikasi yang berbeda.
* Mengisolasi pengguna dari tabel data. Fitur ini memberi Anda kemampuan untuk memberikan akses ke stored procedures yang memanipulasi data namun tidak secara langsung ke tabel.
* Berikan mekanisme keamanan. Jika Anda hanya dapat mengakses data menggunakan stored procedures yang telah ditentukan, tidak ada orang lain yang dapat menjalankan pernyataan SQL DELETE dan menghapus data Anda.
* Untuk meningkatkan kinerja karena mengurangi lalu lintas jaringan. Dengan stored procedures, beberapa panggilan bisa disatukan menjadi satu.

Kekurangan Stored Procedures

* Peningkatan beban pada database server. Sebagian besar pekerjaan dilakukan di sisi server, dan kurang pada sisi client.
* Anda harus mempelajari sintaks pernyataan MySQL untuk menulis stored procedures.
* Jika Anda mengulangi logika aplikasi Anda di dua tempat yang berbeda: kode bahasa pemrograman dan kode stored procedures, membuat pemeliharaan aplikasi akan menjadi lebih sulit.
* Migrasi ke sistem manajemen basis data yang berbeda (DB2, SQL Server, dll) berpotensi menjadi lebih sulit.

MySQL dikenal sebagai RDBMS open source paling populer yang banyak digunakan oleh masyarakat dan perusahaan terutama untuk membuat website ataupun aplikasi web. Namun, selama beberapa tahun pertama keberadaannya, MySQL tidak mendukung stored procedures, trigger, dan event. Sejak versi MySQL 5.0, fitur tersebut ditambahkan ke database engine MySQL agar lebih fleksibel dan bertenaga.

Pada artikel selanjutnya akan ditulis bagaimana cara membuat stored procedures di MySQL.

Klik di sini untuk melihat menggunakan trigger dengan MySQL

Klik di sini untuk artikel lainnya mengenai MySQL