Stored Procedure dan Stored Function merupakan dua konsep penting dalam pengembangan database, terutama pada MySQL. Kedua fitur ini memberikan kemampuan untuk menyimpan serangkaian instruksi SQL secara terpusat di database, meningkatkan efisiensi, keamanan, dan memfasilitasi pemeliharaan kode. Berikut adalah deskripsi mendalam mengenai Stored Procedure dan Stored Function pada MySQL:
Stored Procedure:
Stored Procedure adalah sekumpulan perintah SQL yang telah disimpan dalam database untuk dieksekusi nanti. Proses ini dilakukan secara terpusat di server database, memberikan manfaat berikut:
Efisiensi Eksekusi:
Stored Procedure dapat dioptimalkan dan dikompilasi sekali, mengurangi overhead pengompilan setiap kali perintah dieksekusi.
Pemanggilan ulang Stored Procedure meminimalkan pengiriman data antara aplikasi dan server database.
Keamanan:
Mengontrol akses ke data dengan memberikan izin eksekusi Stored Procedure kepada pengguna tertentu.
Mencegah injeksi SQL karena parameter dapat diikat dengan aman.
Abstraksi Logika Bisnis:
Memungkinkan pemisahan logika bisnis dari aplikasi, sehingga perubahan dapat dilakukan di tingkat database tanpa merubah kode aplikasi.
Fasilitas pemeliharaan dan pengelolaan kode yang lebih baik.
Transaksi dan Rollback:
Membantu dalam manajemen transaksi dengan memungkinkan pengguna untuk memulai, menangguhkan, atau menggulung transaksi di dalam Stored Procedure.
Parameter dan Output:
Menerima parameter input dan mengembalikan nilai output, meningkatkan fleksibilitas dan reusable code.
Stored Function:
Stored Function adalah serangkaian perintah SQL yang mengembalikan nilai tunggal. Beberapa aspek penting dari Stored Function melibatkan:
Reusability:
Mirip dengan Stored Procedure, Stored Function dapat dipanggil dan digunakan berkali-kali dari berbagai bagian dalam database.
Return Value:
Memberikan nilai kembali yang dapat digunakan dalam pernyataan SQL SELECT atau sebagai bagian dari ekspresi dalam perintah SQL lainnya.
Keamanan dan Izin:
Memiliki kontrol akses yang serupa dengan Stored Procedure, memastikan pengguna hanya dapat menjalankan fungsi yang diizinkan.
Integrasi dengan Query:
Dapat digunakan dalam pernyataan SQL untuk mengolah data saat itu juga dan mengembalikan hasil.
Kemampuan Pengolahan Data:
Mungkin melakukan operasi pengolahan data yang kompleks dan mengembalikan hasil dengan sintaks yang bersih.
Perbandingan Antara Stored Procedure dan Stored Function:
Perbedaan Utama:
Stored Procedure tidak mengembalikan nilai, sedangkan Stored Function harus mengembalikan satu nilai.
Stored Function dapat digunakan dalam pernyataan SELECT, sedangkan Stored Procedure digunakan dengan pernyataan CALL.
Pilihan Penggunaan:
Gunakan Stored Procedure ketika Anda ingin melakukan operasi tanpa memerlukan hasil kembalian langsung.
Pilih Stored Function ketika Anda memerlukan nilai kembalian yang dapat digunakan dalam ekspresi atau pernyataan SQL lainnya.
Keamanan dan Kontrol Akses:
Baik Stored Procedure maupun S
Part 13 function dan user defined functionDenny Yahya
Dokumen ini membahas tentang fungsi dan user defined function dalam SQL. Terdapat penjelasan mengenai fungsi agregasi, fungsi waktu, fungsi aritmatika, fungsi karakter, klausa grouping, dan user defined function beserta contoh-contohnya. Diberikan juga latihan soal untuk mempraktikkan penggunaan berbagai fungsi tersebut.
Dokumen tersebut merupakan tutorial tentang penerapan database SQLite pada sistem informasi KHS dan KRS berbasis Android. Tutorial ini menjelaskan langkah-langkah pembuatan aplikasi tersebut mulai dari desain antarmuka pengguna, pembuatan database dan tabel, penginputan data mahasiswa, mata kuliah, KRS dan KHS, hingga pelaporan. Kode program yang dibutuhkan seperti pembuatan kelas, aktivitas, database, serta operasi CRUD juga dijelaskan secara
Part 13 function dan user defined functionDenny Yahya
Dokumen ini membahas tentang fungsi dan user defined function dalam SQL. Terdapat penjelasan mengenai fungsi agregasi, fungsi waktu, fungsi aritmatika, fungsi karakter, klausa grouping, dan user defined function beserta contoh-contohnya. Diberikan juga latihan soal untuk mempraktikkan penggunaan berbagai fungsi tersebut.
Dokumen tersebut merupakan tutorial tentang penerapan database SQLite pada sistem informasi KHS dan KRS berbasis Android. Tutorial ini menjelaskan langkah-langkah pembuatan aplikasi tersebut mulai dari desain antarmuka pengguna, pembuatan database dan tabel, penginputan data mahasiswa, mata kuliah, KRS dan KHS, hingga pelaporan. Kode program yang dibutuhkan seperti pembuatan kelas, aktivitas, database, serta operasi CRUD juga dijelaskan secara
Dokumen tersebut membahas tentang Java Database Connectivity (JDBC) yang merupakan API Java untuk melakukan koneksi dan manipulasi database. JDBC memerlukan database driver untuk setiap jenis database dan menyediakan kelas-kelas seperti Connection, Statement, ResultSet untuk melakukan koneksi, mengirim query dan memproses hasilnya. Dokumen ini juga menjelaskan langkah-langkah koneksi database dan contoh kode untuk menampilkan, menambahkan, men
Dokumen tersebut memberikan tutorial tentang PostgreSQL meliputi penginstalan, penambahan aplikasi tambahan, pembuatan database dan tabel, tipe data, sintaks SQL dasar, dan migrasi database dari MySQL ke PostgreSQL.
Panduan Pemrograman Berbasis Web dengan HTML, PHP, dan Database MySQL Part 2 ...Doni Tobing
Dokumen tersebut memberikan panduan lengkap mengenai proses save, edit, dan delete data pada database MySQL menggunakan PHP. Terdapat penjelasan tentang membuat form input data, menyimpan data ke database, menampilkan data dari database, mengedit data, dan menghapus data.
Bab 15 membahas tentang Design Pattern. Salah satu pattern yang dijelaskan adalah View Helper yang berfungsi untuk memisahkan logic bisnis dari presentasi dengan menyimpan logic tersebut dalam class helper yang dapat diakses oleh komponen presentasi. Pattern lainnya yang dijelaskan adalah Session Facade yang berfungsi untuk menyederhanakan akses ke objek-objek domain dalam sesi pengguna melalui objek facade.
Stored procedure adalah urutan perintah SQL yang disimpan di database untuk mengeksekusi operasi terhadap data secara berulang. Stored procedure mengurangi beban jaringan dengan menyimpan logika aplikasi di database server dan menerima serta mengembalikan parameter input dan output. Stored procedure dibuat menggunakan perintah CREATE PROCEDURE dan dapat memanggil prosedur lain.
Dokumen tersebut membahas tentang stored procedure pada sistem basis data. Ia menjelaskan definisi stored procedure, kelebihan-kelebihannya, contoh penerapan stored procedure untuk mencatat log pengguna dan mentransfer uang antar rekening beserta penjelasan parameter dan struktur penulisan stored procedure.
Dokumen ini membahas konsep dasar penggunaan basis data pada sistem berbasis web. Terdapat penjelasan tentang koneksi database, mengeksekusi query, dan fungsi-fungsi PHP untuk MySQL. Juga dijelaskan cara membuat database, tabel, dan file-file pendukung seperti config, connection, dan SQL. Selanjutnya dijelaskan cara menampilkan, menambahkan, mengubah, dan menghapus data kota pada tabel melalui beberapa file seperti form input, tampil, edit
Program ini merangkum cara membuat program database sederhana di Android menggunakan SQLite untuk menyimpan dan menampilkan data pelanggan. Program terdiri dari beberapa class yang bekerja bersama untuk membuat database, mengisi data, dan menampilkannya. Class DBAdapter digunakan untuk menangani operasi database, sementara class-class lainnya menangani antarmuka pengguna. Program dapat dijalankan pada emulator Android untuk melihat hasilnya.
filter data pada datatables server side 5 menggunakan yajra laravel adminlteAdi Nata
Pada artikel kali ini saya akan membahas bagaimana melakukan filter data pada datatables, fitur filter ini sangat bermanfaat pada aplikasi kita dimana user aplikasi kita ingin menampilkan data yang memiliki kriteria tertentu saja.
Dokumen tersebut memberikan ringkasan singkat tentang konsep Basis Data dan Model ER (Entitas Relasional) serta Model EER (Enhanced Entity Relasional). Secara garis besar, dokumen tersebut menjelaskan bahwa Basis Data adalah kumpulan data yang disimpan secara sistematis di komputer, Model ER menggunakan tabel dua dimensi untuk menggambarkan data, dan Model EER digunakan untuk merepresentasikan Basis Data yang lebih lengkap dengan menggunakan konsep superclass
Dokumen tersebut memberikan panduan langkah demi langkah untuk membuat aplikasi input data sederhana dengan PHP dan MySQL, meliputi:
1) Membuat struktur folder dan database
2) Membuat koneksi ke database
3) Membuat form input dan menyimpan data ke database
4) Menampilkan data dari database
5) Memperbarui data di database
</ringkasan>
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)Debby Ummul
Modul ini membahas tentang pemrograman berorientasi objek dengan bahasa Java. Materi yang dibahas antara lain konsep dasar OOP, penggunaan array, konstruktor, exception handling, serta percabangan dan operator dalam Java."
Persiapan Sebelum Ujian Sertifikasi Associate Android Developer - Ahmad Arif ...DicodingEvent
Dokumen ini memberikan panduan lengkap untuk persiapan mengikuti sertifikasi Associate Android Developer (AAD) dari Google. Terdapat penjelasan mengenai apa itu AAD, manfaat sertifikasi, proses pendaftaran dan ujian, jenis soal ujian, materi yang diujikan, serta tips dan trik untuk mempersiapkan diri menghadapi ujian sertifikasi AAD.
More Related Content
Similar to #7 - Stored Procedure And Function.pptx
Dokumen tersebut membahas tentang Java Database Connectivity (JDBC) yang merupakan API Java untuk melakukan koneksi dan manipulasi database. JDBC memerlukan database driver untuk setiap jenis database dan menyediakan kelas-kelas seperti Connection, Statement, ResultSet untuk melakukan koneksi, mengirim query dan memproses hasilnya. Dokumen ini juga menjelaskan langkah-langkah koneksi database dan contoh kode untuk menampilkan, menambahkan, men
Dokumen tersebut memberikan tutorial tentang PostgreSQL meliputi penginstalan, penambahan aplikasi tambahan, pembuatan database dan tabel, tipe data, sintaks SQL dasar, dan migrasi database dari MySQL ke PostgreSQL.
Panduan Pemrograman Berbasis Web dengan HTML, PHP, dan Database MySQL Part 2 ...Doni Tobing
Dokumen tersebut memberikan panduan lengkap mengenai proses save, edit, dan delete data pada database MySQL menggunakan PHP. Terdapat penjelasan tentang membuat form input data, menyimpan data ke database, menampilkan data dari database, mengedit data, dan menghapus data.
Bab 15 membahas tentang Design Pattern. Salah satu pattern yang dijelaskan adalah View Helper yang berfungsi untuk memisahkan logic bisnis dari presentasi dengan menyimpan logic tersebut dalam class helper yang dapat diakses oleh komponen presentasi. Pattern lainnya yang dijelaskan adalah Session Facade yang berfungsi untuk menyederhanakan akses ke objek-objek domain dalam sesi pengguna melalui objek facade.
Stored procedure adalah urutan perintah SQL yang disimpan di database untuk mengeksekusi operasi terhadap data secara berulang. Stored procedure mengurangi beban jaringan dengan menyimpan logika aplikasi di database server dan menerima serta mengembalikan parameter input dan output. Stored procedure dibuat menggunakan perintah CREATE PROCEDURE dan dapat memanggil prosedur lain.
Dokumen tersebut membahas tentang stored procedure pada sistem basis data. Ia menjelaskan definisi stored procedure, kelebihan-kelebihannya, contoh penerapan stored procedure untuk mencatat log pengguna dan mentransfer uang antar rekening beserta penjelasan parameter dan struktur penulisan stored procedure.
Dokumen ini membahas konsep dasar penggunaan basis data pada sistem berbasis web. Terdapat penjelasan tentang koneksi database, mengeksekusi query, dan fungsi-fungsi PHP untuk MySQL. Juga dijelaskan cara membuat database, tabel, dan file-file pendukung seperti config, connection, dan SQL. Selanjutnya dijelaskan cara menampilkan, menambahkan, mengubah, dan menghapus data kota pada tabel melalui beberapa file seperti form input, tampil, edit
Program ini merangkum cara membuat program database sederhana di Android menggunakan SQLite untuk menyimpan dan menampilkan data pelanggan. Program terdiri dari beberapa class yang bekerja bersama untuk membuat database, mengisi data, dan menampilkannya. Class DBAdapter digunakan untuk menangani operasi database, sementara class-class lainnya menangani antarmuka pengguna. Program dapat dijalankan pada emulator Android untuk melihat hasilnya.
filter data pada datatables server side 5 menggunakan yajra laravel adminlteAdi Nata
Pada artikel kali ini saya akan membahas bagaimana melakukan filter data pada datatables, fitur filter ini sangat bermanfaat pada aplikasi kita dimana user aplikasi kita ingin menampilkan data yang memiliki kriteria tertentu saja.
Dokumen tersebut memberikan ringkasan singkat tentang konsep Basis Data dan Model ER (Entitas Relasional) serta Model EER (Enhanced Entity Relasional). Secara garis besar, dokumen tersebut menjelaskan bahwa Basis Data adalah kumpulan data yang disimpan secara sistematis di komputer, Model ER menggunakan tabel dua dimensi untuk menggambarkan data, dan Model EER digunakan untuk merepresentasikan Basis Data yang lebih lengkap dengan menggunakan konsep superclass
Dokumen tersebut memberikan panduan langkah demi langkah untuk membuat aplikasi input data sederhana dengan PHP dan MySQL, meliputi:
1) Membuat struktur folder dan database
2) Membuat koneksi ke database
3) Membuat form input dan menyimpan data ke database
4) Menampilkan data dari database
5) Memperbarui data di database
</ringkasan>
Modul Praktikum Pemrograman Berorientasi Objek (Chap.1-6)Debby Ummul
Modul ini membahas tentang pemrograman berorientasi objek dengan bahasa Java. Materi yang dibahas antara lain konsep dasar OOP, penggunaan array, konstruktor, exception handling, serta percabangan dan operator dalam Java."
Persiapan Sebelum Ujian Sertifikasi Associate Android Developer - Ahmad Arif ...DicodingEvent
Dokumen ini memberikan panduan lengkap untuk persiapan mengikuti sertifikasi Associate Android Developer (AAD) dari Google. Terdapat penjelasan mengenai apa itu AAD, manfaat sertifikasi, proses pendaftaran dan ujian, jenis soal ujian, materi yang diujikan, serta tips dan trik untuk mempersiapkan diri menghadapi ujian sertifikasi AAD.
Similar to #7 - Stored Procedure And Function.pptx (20)
4. Procedure & Function
Praktikum Manajemen Sistem Basis Data
● Merupakan bagian dari Stored Program pada MYSQL
● Procedure dan Function sama sama menyimpan kumpulan statement
SQL yang dapat digunakan secara berulang.
● Perbedaan yang mencolok di antara keduanya ialah :
○ Procedure dapat memberikan nilai kembalian (Opsional)
○ Function harus memberikan nilai kembalian/return
6. Stored Procedure
Praktikum Manajemen Sistem Basis Data
● Kumpulan perintah/prosedur yang dapat kita simpan di dalam
database yang dapat menerima inputan dan memberikan output.
● Dapat dimanfaatkan untuk :
○ Mengeksekusi perintah SQL yang sering digunakan.
○ Menjalankan perintah INSERT, UPDATE, atau DELETE menjadi lebih
singkat.
○ Mengimplementasikan logic bisnis dari suatu aplikasi dalam satu
kesatuan, dll.
7. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Kita bisa mem-pass parameter ke dalam Procedure,
● IN => Memasukan nilai kedalam Procedure melalui parameter
● OUT => Nilai kembalian(output) dari Procedure
● INOUT => Berperan sebagai nilai masukkan dan keluaran
NOTE : Jika kita tidak menyertakan kata kunci IN pada parameter, maka
secara default variabel tersebut merupakan parameter INPUT.
8. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Syntax:
CREATE PROCEDURE nama_procedure(param1 data_type, param2 data_type, …)
BEGIN
[Kumpulan perintah SQL]
END;
Call Procedure :
CALL nama_procedure([params]);
9. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Contoh:
DELIMITER $$
CREATE OR REPLACE PROCEDURE getWriter()
BEGIN
SELECT * FROM penulis;
END $$
DELIMITER ;
Call Procedure : CALL getWriter();
10. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Contoh:
DELIMITER $$
CREATE OR REPLACE PROCEDURE getMahasiswaByStambuk(tahun INT(4))
BEGIN
SELECT * FROM mahasiswa WHERE stambuk = tahun;
END $$
DELIMITER ;
Call Procedure : CALL getMahasiswaByStambuk(2019);
11. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Contoh:
DELIMITER $$
CREATE OR REPLACE PROCEDURE insertBuku(IN judul_buku_param VARCHAR(255), IN
id_penulis_param INT, IN tahun_param INT(4), IN bahasa_param VARCHAR(255), OUT
jumlah_buku_output VARCHAR(255))
BEGIN
DECLARE jlh_buku INT;
INSERT INTO buku (judul, id_penulis, tahun, bahasa) VALUES(judul_buku_param,
id_penulis_param, tahun_param, bahasa_param);
SELECT COUNT(*) INTO jlh_buku FROM buku;
SET jumlah_buku_output = CONCATE('Buku berhasil ditambahkan, total buku
sekarang = ', jlh_buku);
END $$
DELIMITER ;
12. Stored Procedure
Praktikum Manajemen Sistem Basis Data
CALL Procedure :
CALL insertBuku( 'Niat Grinding Malah Glinding: Mobile Legends
Edition', 7, 2023, 'Indonesia', @total_buku);
SELECT @total_buku;
13. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Contoh:
DELIMITER $$
CREATE PROCEDURE kuadrat(INOUT angka_param int)
BEGIN
SELECT (angka_param * angka_param) into angka_param;
END $$
DELIMITER ;
Call Procedure : SET @angka = 8;
CALL kuadrat(@angka);
SELECT @angka;
15. Stored Function
Praktikum Manajemen Sistem Basis Data
● Kumpulan perintah/prosedur yang disimpan dan akan mengembalikan
suatu nilai.
● Stored function ini bekerja seperti function mysql (AVG, SUM, MAX, dll)
namun stored function adalah function yang kita definisikan sendiri.
16. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Syntax:
CREATE FUNCTION nama_function (parameter1 datatype, parameter2 datatype, …)
RETURNS datatype
[NOT] DETERMINISTIC
BEGIN
[Kumpulan Perintah SQL]
RETURN something
END $$
DELIMITER ;
17. Stored Procedure
Praktikum Manajemen Sistem Basis Data
DETERMINISTIC
The DETERMINISTIC keyword is not necessary in all cases (although if binary
logging is on, leaving it out will throw an error), and is to help the query optimizer
choose a query plan. A deterministic function is one that, given the same
arguments, will always return the same result.
For further information, you can see here STACKOVERFLOW
18. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Contoh:
DELIMITER $$
CREATE FUNCTION perkalian(a INT, b INT) RETURNS INT
BEGIN
RETURN a*b;
END $$
DELIMITER ;
Call Procedure : SELECT perkalian(4, 2);
19. Stored Procedure
Praktikum Manajemen Sistem Basis Data
Contoh:
DELIMITER $$
CREATE OR REPLACE FUNCTION usia(id INT) RETURNS INT
BEGIN
DECLARE lahir date; DECLARE sekarang date; DECLARE thn INT;
SET lahir = (SELECT tanggal_lahir FROM penulis WHERE id_penulis=id);
SET sekarang = now();
SET thn = 365;
RETURN DATEDIFF(sekarang, lahir)/thn;
END $$
DELIMITER ;
Call Procedure : SELECT usia(7);
21. Praktikum Manajemen Sistem Basis Data
Tugas Pertemuan #7 Stored Procedure & Function
Masuk ke mysql lalu buat file log tee untuk merekam semua query di sql anda! click untuk melihat
tutorial. Gunakan bahan ajar kita `sample_buku.sql` untuk mengerjakan tugas ini.
NO 1 :
Perpustakaan tersebut menerapkan aturan bagi yang telat mengembalikan buku, yaitu denda senilai
Rp 2000,-/hari setelah waktu pinjam. Buatlah sebuah Stored Function untuk menghitung denda
tersebut. (Format nama Function => [nimAnda]_denda(id_peminjaman_buku_param INT)).
NOTE : Denda hanya berlaku bagi mahasiswa yang belum mengembalikan buku setelah melewati
waktu pinjam.
22. Praktikum Manajemen Sistem Basis Data
NO 2:
Buatlah Procedure untuk menampilkan data peminjaman buku yang masuk dalam kategori TELAT
mengembalikan buku. Data yang akan ditampilkan adalah Nim, Nama, Judul Buku, Tanggal Kembali,
Jumlah Denda. (Format nama Procedure => [nimAnda]_listTelat() ).
HINT: Manfaatkan fungsi pada soal pertama yang telah kalian buat untuk menentukan Jumlah Denda.
File yang dikumpul adalah file .txt dari hasil log anda.
Format File : Nama_NIM_Tugas_P7.txt
Deadline : Kamis, 23 Oktober 2023 Pukul 23.59 WIB
Tugas Pertemuan #7 Stored Procedure & Function