Tutorial Store Procedure dan Function dengan Database MySQL dan Bahasa Pemrograman C#.NET Christian Yonathan S. Christianys14@gmail.com Tutorial Store Procedure dan Function dengan Database MySQL dan Bahasa Pemrograman C#.NET by Laboratorium ICT Terpadu is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. A. Bahan dan Alat 1. Hardware berupa PC/Laptop dengan perangkat lunak Microsoft Visual Studio 2008 atau 2010 atau lebih dari itu. Akan tetapi Penulis menggunakan Visual Studio 2008. 2. Xampp sebagai perangkat lunak yang sudah embedded (Apache, MySQL) sehingga tinggal melakukan instalasi dengan mudah. 3. Knowledge programming language C#.NET. 4. Modul mengenai Tutorial Store Procedure dan Function pada Database MySQL. Modul C#.NET B. Waktu Yang Diperlukan 15-25Menit. 1
C. Praktikkum 1. Buatlah sebuah database dan tabel seperti gambar di bawah ini : Gambar 1. Query Create Database dan Tabel 2. Buatlah 6 procedure seperti gambar di bawah ini : Gambar 2. Query Create Procedure 2
3. Buatlah 4 function seperti gambar di bawah ini : Gambar 3. Query Create Function 4. Hasil akhir tabel yang sudah dibuat beserta procedur dan function seperti pada gambar di bawah ini Gambar 4. Tabel, Procedure, dan Function 3
5. Buatlah sebuah form seperti pada gambar di bawah ini Gambar 5. Contoh Form Input Mahasiswa 5.1. deksripsi mengenai form input mahasiswa a. Terdapat total 6 textbox berfungsi menerima inputan dari user. b. Terdapat total 4 radio button berfungsi memilih jenis kelamin berdasarkan pilihan user. c. Terdapat total 10 button berfungsi melakukan action penyimpanan, perubahan, penghapusan, pembersihan, maupun penambahan. d. Terdapat total 1 gridview berfungsi menampilkan record atau data yang sudah tersimpan pada database. e. Penamaan setiap variable terhadap setiap textbox, radio button, button, dan gridview mempunyai pola XXYYZZ. XX : nama objeknya, apakah textbox, radio button, button, dan gridview. 4
YY : terdiri dari P dan F. jika P maka terletak pada form procedure. Jika F maka terletak pada form function. ZZ : merupakan keterangan tambahan, contohnya nama, perempuan, dsbg. 5.2. Cara kerja sistem a. Ketika user menekan tombol simpan, maka menyimpan pada database lalu hasil yang sudah tersimpan ditampilkan pada gridview. b. Ketika user mengisi pada text nim, lalu menekan tombol enter maka akan dilakukan pencarian pada table jika record nya ada maka akan ditampilkan dan text nim akan disabled dan tombol simpan disabled, tombol ubah dan hapus dan bersih enabled. Setelah memilih untuk dilalukan perubahan atau penghapusan maka akan ditampilkan record lagi pada gridview berdasarkan pemilihan yang tadi. Jika bersih, maka form akan disiapkan kembali seperti awal. 6. Listing Code 6.1. Pembuatan kelas koneksi dan fungsi buka koneksi ke database. Gambar 6. Kelas Koneksi dan Fungsi 5
6.2. Property NIM, nama variable koneksi, konstruktor, dan form load. Gambar 7. Property NIM, nama variable koneksi, konstruktor, dan form load. 6.3. formloadprocedur, formloadfunction, judulgridviewmahasiswa 6.3.1. formloadprocedur, formloadfunction Gambar 8. formloadprocedur, formloadfunction 6.3.2. judulgridviewmahasiswa Gambar 9. judulgridviewmahasiswa 6
6.4. tombolpsimpan_click Gambar 10. TombolPsimpan 6.4.1. isigvprocedur, bersihprocedur Gambar 11. isigvprocedur, bersihprocedur 7
6.5. tombolpubah_click Gambar 12. TombolPubah 6.6. tombolphapus_click Gambar 13. TombolPhapus 8
6.7. textpnim_keypress Gambar 14. textpnim_keypress #1 Gambar 15. textpnim_keypress #2 6.8. tombolpbersih_click, tombolptambah_click Gambar 16. tombolpbersih_click, tombolptambah_click 9
6.9. tombolfsimpan_click Gambar 17. tombolfsimpan_click 6.10. tombolfubah_click Gambar 18. tombolfubah_click 10
6.11. tombolfhapus_click Gambar 19. tombolfhapus_click 6.12. tombolfbersih_click, tombolftambah_click Gambar 20. tombolfbersih_click, tombolftambah_click 11
6.13. textfnim_keypress Gambar 21. textfnim_keypress #1 Gambar 22. textfnim_keypress #2 12
6.14. formloadfunction, bersihfunction, isigvfunction Gambar 23. formloadfunction, bersihfunction, isigvfunction 13
7. Questions And Answers 7.1. Q : apa yang dimaksud procedure dan function? A : procedure merupakan subroutine yang tersedia pada aplikasi untuk akses pada RDBMS. Procedure faktanya tersimpan pada database data dictionary. Function biasanya juga dikenal dengan user function atau user defined function merupakan sekumpulan pernyataan PL/SQL yang bisa dipanggil berdasarkan namanya. Function sangatlah mirip dengan procedure, kecuali function mengembalikan SEBUAH NILAI kepada yang memanggilnya. 7.2. Q : mengapa menggunakan procedure atau function? A : 1) Program lebih ringkas dan cepat dengan procedure atau function, algoritma akan tersimpan pada sisi server, program cukup memanggil procedur atau function yang diinginkan, selanjutnya server yang akan mengeksekusi perintah yang diinginkan. 2) Procedure atau function tidak bergantung kepada bahasa pemrograman, dimana perubahan bahasa pemrograman di sisi aplikasi tidak akan mengubah logika dari sisi database. Perubahan pada proses berlaku untuk semua user yang terhubung ke database. 14
Penutup Terima kasih, semoga apa yang saya tuliskan dapat bermanfaat untuk pembaca sekalian dan dapat dikembangkan lagi dengan kasus yang berbeda. Dan semoga dapat menginspirasi pembaca sekalian untuk dapat ikut juga menulis, supaya ilmu yang telah diamanahkan dapat bermanfaat untuk orang banyak. Tentang Penulis Christian Yonathan lahir di Jakarta. Penulis adalah mahasiswa Universitas Budi Luhur, Fakultas Teknologi Informasi, Jurusan Teknik Informatika. Penulis juga merupakan Asisten Laboratorium Komputer ICT Terpadu, Universitas Budi Luhur. Penulis mempelajari bahasa pemrograman ASP.NET. penulis juga mempelajari Algoritma Genetika, Data Mining, Jaringan Syaraf Tiruan, dan Web Service. 15
REFERENSI http://www.codeproject.com/articles/36484/working-c-code-for-mysql- Stored-Procedures-IN-OUT http://forums.asp.net/t/988462.aspx?calling+a+stored+procedure+fro m+mysql+in+c+also+objectdatasources http://ilmukomputer.org/2013/09/20/mysql-stored-procedure/ http://arekubl.blogspot.com/2014/01/pengertian-stored-procedure.html http://dev.mysql.com/doc/connector-net/en/connector-netprogramming-stored-using.html https://ginageh.wordpress.com/2009/06/08/kegunaan-storedprocedure/ http://www.aspsnippets.com/articles/call-mysql-stored-procedure-with- Parameters-in-ASPNet-C-and-VBNet.aspx http://pojokprogrammer.net/content/dasar-dasar-stored-procedurepada-sql-server-2005-ke-atas http://docs.oracle.com/cd/b12037_01/server.101/b10759/statements_5 009.htm 16