Cara menggunakan store procedure mysql example

Cara menggunakan store procedure mysql example

Assalamu'alaikum wr.wb
Ketika kita membuat aplikasi berbasis database, kita mulai kesulitan dengan CRUD. Apakah CRUD tersebut error atau tidak, dan kita harus mencari kesalahan tersebut dengan mengikuti alur program yang sudah dibuat. Hal ini tentunya sangat merepotkan. apalagi jika tabel yang kita gunakan cukup banyak. Solusi untuk hal tersebut adalah Stored procedure,Trigger, dan Function. Dengan Stored procedure, Trigger, dan Function, kita bisa membuat program CRUD langsung dari MySQL, sehingga program lebit tertata rapi dan mudah untuk diperbaiki.

Stored procedure, Trigger, dan function juga berguna untuk SELECT di MySQL. Karena dengan hal tersebut, kita hanya perlu memanggil stored procedure,Trigger, dan function dari MysQL tanpa perlu mengetik ulang query, sehingga hal tersebut mempercepat pembuatan program dan meringkas program dengan semestinya.

Tutorial yang akan saya berikan ini merupakan tutorial tentang cara membuat stored procedure, trigger, dan function di MySQL dengan menggunakan phpMyAdmin. Ketiganya memiliki cara yang sama yaitu ada di menu bar routines. di menu tersebut, kita bisa membuat ketiganya dalam satu fitur. Menurut saya itu sangat efisien. Dengan adanya fitur-fitur ini kita tak perlu lagi mengetikkan program kecuali hanya CRUD saja.

Baca Juga

  • Psiphon3, Aplikasi VPN untuk PC
  • Membuat Function dan Stored Procedure SQL Server 2014
  • Array 1 Dimensi, 2 Dimensi, 3 Dimensi menggunakan bahasa C++

Untuk memulai membuatnya, kita hanya perlu memilih database yang akan kita gunakan. Dalam hal ini saya menggunakan database yang saya buat disini. Pada menu bar bagian atas daftar tabel terdapat beberapa menu. pilihlah routines, lalu add routines.

Hal diatas adalah langkah awal untuk membuat stored procedure, trigger, dan function menggunakan phpMyAdmin. Berikut ini merupakan tutorialnya

1. Stored Procedure

Stored Procedure adalah salah satu object routines yang tersimpan pada database MySQL dan dapat berfungsi untuk menggantikan berbagai kumpulan perintah yang sering kita gunakan. Perintah-perintah tersebut salah satunya adalah CRUD, Sorting tabel, dan SELECT

Seperti yang saya jelaskan sebelumnya. disini saya hanya memberikan tutorial tentang membuat procedure di phpMyAdmin. Untu membuatnya, kita hanya perlu menyiapkan perintah yang akan dijadikan procedure yang kemudian kita buat procedure tersebut di phpMyAdmin menggunakan menu routines.

  • Pada kolom Routine Name, tulislah insert_dosen
  • Pada kolom Type, pilihlah Procedure
  • Setelah itu, ada kolom parameter. disini kita hanya perlu memberikan parameter yang dibutuhkan saja. Dalam hal ini kolom di tabel tb_dosen(yang akan kita input adalah tabel tb_dosen). Usahakan tipe data parameter sama dengan tipe data pada tiap kolom tb_dosen. Berikut merupakan parameter yang digunakan.
    Direction Name Type Length/Values Options
    IN nama_parameter Varchar 50 Char
    IN jkel_parameter Varchar 11 Char
    IN alamat_parameter Text null Char

    Keterangan : Untuk Direction dan Optionts tidak perlu diubah-ubah. biarkan seperti itu saja.
  • Untuk SQL Data Access, pilihlah Containts SQL
  • Untuk Definition, disinilah proses CRUD dimasukkan
    Berikut merupakan contoh perintah crud yang akan dimasukkan ke definition dalam procedure

    INSERT


    berikut merupakan contoh procedure insert pada MySQL. dengan contoh dibawah ini, mungkin pembaca yang baru mempelajari procedure, bisa membuat Procedure insert pada database MySQL menggunakan phpMyAdmin

    BEGIN
        INSERT INTO tb_dosen
                    (nama_dosen,  jkel, alamat)
        VALUES     (nama_parameter,  jkel_parameter,  alamat_parameter);
    END 


    berikut ini merupakan tampilan gambar keseluruhan dalam procedure insert di MySQL. Lalu klik tombol go.


    Jika anda ingin membuat secara manual bisa juga dengan menu bar SQL lalu buat program seperti dibawah ini

    CREATE definer=`root`@`localhost` PROCEDURE `insert_dosen`(IN `nama_parameter` varchar(50), IN `jkel_parameter` varchar(11), IN `alamat_parameter` text)
    BEGIN INSERT INTO tb_dosen
                  (
                              nama_dosen,
                              jkel,
                              alamat
                  )
                  VALUES
                  (
                              nama_parameter,
                              jkel_parameter,
                              alamat_parameter
                  );END

    UPDATE


    Untuk Update, kita perlu menambahkan satu parameter lagi. Yaitu id_parameter sebagai WHERE clause. Seperti yang dijelaskan dalam CRUD di MySQL bahwa untuk perintah update, kita perlu untuk memberikan value penentu yang mana data yang akan diubah merupakan data yang memiliki value tertentu. Jika tidak, maka semua data akan diupdate. disini saya memberikan contoh update dengan value id tertentu saja.
    berikut merupakan contoh procedure update pada MySQL. dengan contoh dibawah ini, mungkin pembaca yang baru mempelajari procedure, bisa membuat Procedure update pada database MySQL menggunakan phpMyAdmin
    Direction Name Type Length/Values Options
    IN id_parameter integer null Char
    IN nama_parameter Varchar 50 Char
    IN jkel_parameter Varchar 11 Char
    IN alamat_parameter Text null Char

    BEGIN
        UPDATE tb_dosen
        SET    nama_dosen = nama_parameter,
               jkel = jkel_parameter,
               alamat = alamat_parameter
        WHERE  id_dosen = id_parameter;
    END 


    berikut ini merupakan tampilan gambar keseluruhan dalam procedure insert di MySQL. Lalu klik tombol go.

    Jika anda ingin membuat secara manual bisa juga dengan menu bar SQL lalu buat program seperti dibawah ini

    CREATE definer=`root`@`localhost` PROCEDURE `update_dosen`(IN `id_parameter` int, IN `nama_parameter` varchar(50), IN `jkel_parameter` varchar(11), IN `alamat_parameter` text)
    BEGIN UPDATE tb_dosen
      SET    nama_dosen = nama_parameter,
             jkel = jkel_parameter,
             alamat= alamat_parameter
      WHERE  id_dosen = id_parameter;END

    DELETE


    berikut merupakan contoh procedure Delete pada MySQL. dengan contoh dibawah ini, mungkin pembaca yang baru mempelajari procedure, bisa membuat Procedure delete pada database MySQL menggunakan phpMyAdmin
    Berbeda dengan INSERT dan UPDATE. Untuk DELETE, kita hanya memerlukan satu parameter saja. Yaitu id, karena jika tidak ada value, maka semua data akan terhapus.
    Direction Name Type Length/Values Options
    IN id_parameter integer null Char

    BEGIN
        DELETE tb_dosen
        WHERE  id_dosen = id_parameter;
    END 

    berikut ini merupakan tampilan gambar keseluruhan dalam procedure insert di MySQL. Lalu klik tombol go.


    Jika anda ingin membuat secara manual bisa juga dengan menu bar SQL lalu buat program seperti dibawah ini

    CREATE definer=`root`@`localhost` PROCEDURE `delete_dosen`(IN `id_parameter` int)
    BEGIN DELETE
      FROM   tb_dosen
      WHERE  id_dosen = id_parameter;END

  • Setelah semuanya selesai, silahkan run dengan menggunakan perintah CALL [NAMA_PROCEDURE] [Paramter_n]
    Sebagai contoh, saya akan memanggil procedure insert_dosen (nama_parameter, jkel_parameter, alamat_parameter).

    call insert_dosen ('Prof. Dr, Rudi Pangestu S.Pd', 'Laki-laki', 'jl.Monjali') 

    Lalu Klik go dan lihat hasilnya


2. Trigger

Trigger adalah sebuah script perintah MySQL yang memicu suatu kejadian dalam MySQL berupa sebuah aksi CRUD setelah syarat tertentu(after or before).

Berikut merupakan contoh trigger mysql. Dengan memberikan Contoh ini, semoga saja bisa membuat pembaca semakin paham denan trigger yang ada di MySQL. Contoh yang akan saya berikan ini merupakan contoh membuat trigger menggunakan XAMPP

Untuk memulainya, alangkah baiknya jika kita membuat 1 lagi tabel. yaitu tabel status yang berelasi one to one pada tb_dosen

tb_status

Nama Tipe Data Index
id_status Integer Primary key dan foreign key tb_dosen(id_dosen)
status varchar(12) null

Lalu pilih tb_status di menu sebelah kiri, dan di menu bar pilih trigger. lalu pilih add triger.

  • pada Trigger Name, tulislah trigger_insert_status
  • Pada Table, pilihlah tb_dosen
  • Pada Time, pilihlah After
  • Untuk Event, pilihlah INSERT
  • Untuk Definintion, disini kita buat script yang merupakan perintah untuk menambah data di tb_status.
    buatlah script dibawah ini di kolom definition

    BEGIN
        INSERT INTO tb_status
                    (id_status,
                     status)
        VALUES     (new.id_dosen,
                    'Aktif');
    END 


    Berikut ini adalah hasil gambarnya


  • Apabila ingin membuat trigger secara manual, bisa gunakan script seperti dibawah ini :

    CREATE TRIGGER `trigger_insert_status` after INSERT
    ON `tb_dosen`
    FOR EACH row
    begin
      INSERT INTO tb_status_dosen
                  (id_status,
                   status)
      VALUES     (new.id_dosen,
                  'Aktif');
    end 

  • Setelah semua hal diatas sudah dilakukan, kita hanya perlu menginput data tb_dosen, karena pada dasarnya trigger tidak bisa dipanggil.

    call insert_dosen('Dr.Maguwoharjo', 'laki-laki', 'Jl.Gamping') 

    lihatlah pada tb_status_dosen. sudah ada data yang terinput



3. Function

Function adalah suatu bagian dari program yang digunakan untuk mengerjakan suatu tugas tertentu yang mengembalikan suatu nilai untuk dikembalikan ke program pemanggil yang letaknya dipisahkan dari bagian program yang menggunakannya.

berikut ini merupakan cara membuat function di phpMyAdmin. Dengan membuat function tersebut, maka programmer hanya tinggal memanggilnya di program saja. tanpa perlu mengetik ulang. sehingga phpMyAdmin bisa bergunal lebih banyak.

Saat ini yang akan saya berikan adalah contoh function di MySQL untuk menampilkan id_mahasiswa, berdasarkan kelas . pernahkah anda melihat id yang memiliki huruf dan angkan seperti "A001", ''10.12.0001"? Mungkin memang yang mereka panggil adalah id, namun pengalaman saya ketika pendadaran dulu, saya menggunakan format id seperti itu, dan dosen penguji saya memberikan saran sebaiknya id bertype data integer saja. Karena integer lebih ringan daripada Char, sehingga database dapat memuat data lebih banyak. Lalu bagaimana caranya untuk membuat id seperti itu? Jawabannya adalah dengan Function, yang perlu kita lakukan hanyalah memanipulasi data saja. menampilkan data dari beberapa kolom dan dijadikan satu kolom.

Nah agar tidak lebih bingung, sebaiknya kita coba saja

  • Masuk ke menu routines, sama seperti procedure
  • Pada Routine Name, kita buat saja nama "tampil_id_mahasiswa"
  • Untuk Type, kita pilih Function
  • Untuk Parameter adalah sebagai berikut :
    Direction Name Type Length/Values
    id_parameter Integer 11 null
  • Pada Return Type, pilih Varchar
  • Pada Return Length/Values, tulis 20
  • Untuk Return Options, kita biarkan Null saja
  • Pada SQL Data Access, pilih CONTAINS SQL
  • Seperti biasa, ketikkan script berikut ini ke Definition

    BEGIN
        DECLARE nama_kelas_parameter VARCHAR(10);

        SELECT tb_kelas.nama_kelas
        INTO   nama_kelas_parameter
        FROM   tb_mahasiswa
               JOIN tb_kelas
                 ON tb_mahasiswa.id_kelas = tb_kelas.id_kelas
        WHERE  tb_mahasiswa.id_mahasiswa = id_parameter;

        RETURN Concat(nama_kelas_parameter, '/', id_parameter);
    END

    Berikut adalah gambarnya

Untuk memanggil Function, kita gunakan perintah SELECT [nama_function]([parameter_n]). Berikut ini adalah contohnya:

SELECT Tampil_id_mahasiswa(1) 

Keterangan : angka satu didalam kurung merupakan id_mahasiswa di table tb_mahasiswa.

Dan berikut ini merupakan hasilnya

Dalam pembelajaran, Ibarat seseorang yang sedang naik tangga, Sebagai seorang yang sudah ahli tentu tidak boleh memarahi orang yang berada dibawahnya. Demikian Tutorial yang saya berikan, terimakasih atas kunjungannya. Assalamu'alaikum wr.wb

Bagaimana cara kerja stored procedure?

Stored procedure ini merupakan suatu blok program yang dapat dipanggil secara berulang-ulang dalam bentuk script. Dengan menggunakan stored procedure maka seluruh aplikasi akan terdistribusi dan ketika mengeksekusi satu perintah CALL aplikasi dapat langsung membentuk sejumlah task yang dapat berjalan di dalam server.

Apa yang dimaksud dengan perintah store procedure dan buat contoh dari store prosedure?

Stored procedure merupakan salah satu objek routine (Program) yang tersimpan pada database MySQL dan dapat digunakan untuk alternatif menggantikan berbagai macam kumpulan perintah yang sering kita gunakan, seperti misalnya menambahkan sebuah data di table tertentu, menghapus, ataupun juga mengupdate data.

Apa itu stored procedure MySQL?

Stored Procedure adalah sebuah prosedur layaknya subprogram (subrutin) di dalam bahasa pemrograman reguler yang tersimpan di dalam katalog basis data. Beberapa kelebihan yang ditawarkan stored procedure antara lain : mengingkatakan performa, mereduksi trafik jaringan, reusable, dan meningkatkan kontrol sekuriti.

Tuliskan apa saja yang mampu dilakukan oleh store procedure?

Stored Procedure di SQL Server..
Mengakses data JSON Menggunakan Javascript..
Menampilkan JSON Dengan PHP..
CRUD Sederhana PHP dan SQL Server..
CRUD Sederhana Dengan CodeIgniter..
SAP ABAP - ALV Grid WIth Simple OOP Implementation..
Mengenal RestfulAPI..