Cara menggunakan belajar mysql dari nol

Belajar MySQL Dari NOL Isa Hamdan, S.Kom Founder KomputerKit.com Kenapa harus menggunakan database?Kebanyakan aplikasi yang dibuat digunkanakan untuk menyimpan dan melihat data.Data adalah bagian terkecil yang digunakan sebagai penyusun informasi. Karena fungsiyang sangat penting dari data agar dapat digunakan sebagai sumber informasi yangbenar. Maka perlu dibuat sebuah rumah data yang baik dan benar. Rumah data inilahyang disebut dengan DATABASE.Desain database yang baik akan membuat database tersebut dapat berjalan dengan baikdan sesuai dengan harapan ketika database dirancang dan dibuat. Keterampilanmembuat database akan sangat menentukan berhasil tidaknya aplikasi dibuat. Databaseadalah jantung dari aplikasi.Proses pembuatan aplikasi selalu dimulai dari desain database yang benar dulu barukemudian ke desain tampilan (USER INTERFACE), baru kemudian ke CODING ataupembuatan kode program. Buku ini akan memandu untuk proses pembuatan databasemenggunakan MySQL.Terimakasih sudah membaca dan menggunakan buku ini sebagai bahan untuk belajar.Jika ada masukan kritik atau saran demi perbaikan isi silahkan kirim ke email :[email protected] BukuEdisi Pertama - April 2018 Halaman 1 dari 97 Untuk kedua orang tua (ibu & bapak), buku ini Saya buat sebagai do’a anak kepada kedua orang tua, seperti sabda Nabi Kita. Halaman 2 dari 97 DAFTAR ISIDASAR PENGGUNAAN......................................................................................................... 7 DASAR PENGGUNAAN..................................................................................................... 8 INSTALASI XAMPP ........................................................................................................... 8 KELUAR DARI MYSQL ...................................................................................................... 9 MEMERIKSA MYSQL JALAN ATAU TIDAK ...................................................................... 10 CEK VERSI MYSQL.......................................................................................................... 10 MENAMPILKAN HELP MYSQL........................................................................................ 10 MENAMPILKAN TANGGAL ............................................................................................ 11 MENAMPILKAN WAKTU ATAU JAM .............................................................................. 11 MENGGUNAKAN KALKULATOR..................................................................................... 11DDL.................................................................................................................................... 13 DDL (Data Definition Language).................................................................................... 14 MENAMPILKAN DATABASE ........................................................................................... 14 MEMBUAT DATABASE................................................................................................... 15 MENGHAPUS DATABASE............................................................................................... 15 MENGAKTIFKAN DATABASE.......................................................................................... 16 TIPE DATA...................................................................................................................... 16 MEMBUAT TABEL.......................................................................................................... 19 MENAMPILKAN TABEL .................................................................................................. 20 MENAMPILKAN STRUKTUR TABEL ................................................................................ 20 MENAMBAH KOLOM..................................................................................................... 22 MERUBAH TIPE DATA.................................................................................................... 22 MEMBERI NILAI DEFAULT PADA KOLOM ...................................................................... 23 MENGHAPUS KOLOM ................................................................................................... 24 MERUBAH NAMA KOLOM............................................................................................. 25 MENAMBAHKAN PRIMARY KEY .................................................................................... 26 MENAMPILKAN ENGINE YANG DIGUNAKAN ................................................................ 26 MENAMBAH KOLOM SETELAH KOLOM ........................................................................ 28 MEMBUAT INDEX.......................................................................................................... 29 MENAMPILKAN INDEX .................................................................................................. 30 Halaman 3 dari 97 MENGHAPUS INDEX...................................................................................................... 30DML................................................................................................................................... 31 Data Manipulation Language ....................................................................................... 31 INSERT SEMUA KOLOM................................................................................................. 32 INSERT SEBAGIAN KOLOM ............................................................................................ 33 DELETE SEBAGIAN RECORD (BARIS DATA) .................................................................... 33 DELETE SEMUA RECORD ............................................................................................... 34 UPDATE SEBAGIAN RECORD ......................................................................................... 34 UPDATE SEMUA RECORD.............................................................................................. 35 TABEL MASTER DAN TABEL TRANSAKSI (DETAIL) ......................................................... 36 TABEL MASTER .......................................................................................................... 36 TABEL TRANSAKSI...................................................................................................... 36 PRIMARY KEY DAN FOREIGN KEY.................................................................................. 36 RELATIONAL DEPENDENCIES (HUBUNGAN KETERGANTUNGAN)................................. 37 PROSES BISNIS (ALUR KERJA) ........................................................................................ 37 MENGUJI HASIL PEMBUATAN RELASI........................................................................... 40 PEMBUATAN VIEW........................................................................................................ 43 MENAMPILKAN SEMUA VIEW YANG SUDAH DIBUAT .................................................. 44 MELIHAT ISI VIEW ......................................................................................................... 44 MENGHAPUS VIEW ....................................................................................................... 44 SELECT SEMUA KOLOM (*) ........................................................................................... 45 SELECT SEBAGIAN KOLOM ............................................................................................ 45 SELECT ORDER............................................................................................................... 46 SELECT GROUP .............................................................................................................. 47 PENGUJIAN WHERE....................................................................................................... 47 SUBQUERY (SELECT IN SELECT) ..................................................................................... 49 MEMBUAT RELASI ANTAR TABEL.................................................................................. 51 RELASI 2 TABEL MASTER DAN 1 TABEL TRANSAKSI ..................................................... 52 DUMMY DATA............................................................................................................... 53 KONSEP TRIGGER .......................................................................................................... 54 PEMBUATAN TRIGGER .................................................................................................. 59 Halaman 4 dari 97 MENAMPILKAN TRIGGER .............................................................................................. 61 PENGUJIAN TRIGGER .................................................................................................... 61 HAPUS TRIGGER ............................................................................................................ 65 JOIN (GABUNGAN TABEL) ............................................................................................. 66 INNER JOIN (MENGAMBIL BAGIAN YANG ADA DI TABEL MASTER DAN TABEL TRANSAKSI) ............................................................................................................... 68 LEFT JOIN (MENAMPILKAN TABEL MASTER)............................................................. 70 RIGHT JOIN (MENAMPILKAN TABEL TRANSAKSI) ..................................................... 70 STORE PROCEDURE ....................................................................................................... 71 MENAMPILKAN SEMUA PROCEDURE ........................................................................... 72 MENGHAPUS STORE PROCEDURE ................................................................................ 72 FUNCTION ..................................................................................................................... 73 MENAMPILKAN SEMUA FUNCTION .............................................................................. 77 MENGHAPUS FUNCTION............................................................................................... 77 SELECT AGGREGATE...................................................................................................... 78 SELECT BETWEEN (SELECT ANTARA DUA NILAI) ........................................................... 79 SELECT DISTINCT (MENAMPILKAN DATA YANG SAMA HANYA SATU KALI).................. 80 START TRANSACTION, COMMIT, DAN ROLLBACK......................................................... 80DBA.................................................................................................................................... 84 Database Administration .............................................................................................. 84 TENTANG DBA (Database Administration) ................................................................... 85 MENAMPILKAN SEMUA USER....................................................................................... 85 MENAMBAH USER ........................................................................................................ 86 MEMBERIKAN PASSWORD PADA USER ........................................................................ 86 MENGUJI USER DAN PASSWORD YANG TELAH DIBUAT ............................................... 87 MEMBERIKAN HAK AKSES (PRIVILEGES) USER KE DATABASE...................................... 87 MENAMPILKAN USER YANG SEDANG LOGIN (MASUK) ................................................ 88 MENAMPILKAN HAK AKSES YANG DIBERIKAN.............................................................. 89 MENGHAPUS HAK AKSES .............................................................................................. 89 MEMBERIKAN HAK AKSES PADA DATABASE DENGAN TABEL ...................................... 90 MEMBERIKAN HAK AKSES PADA SELECT, INSERT, DELETE, UPDATE, PADA TABEL ..... 92 UBAH PASSWORD USER................................................................................................ 94 Halaman 5 dari 97 HAPUS USER.................................................................................................................. 94 MERUBAH PASSWORD USER [root] .............................................................................. 95DAFTAR PUSTAKA ............................................................................................................. 96 Halaman 6 dari 97 DASAR PENGGUNAAN Halaman 7 dari 97 DASAR PENGGUNAANSebelum menggunakan MySQL, pastikan MySQL sudah ter install di komputer ataulaptop. Agar latihan anda sama dengan yang ada dibuku. Sebaiknya ikuti aplikasi yangdigunkan di buku.INSTALASI XAMPPAplikasi yang digunakan sebagai bahan belajar adalah XAMPP. Download XAMPP dilokasi sebagai berikut:https://www.apachefriends.org/download.htmlinstall XAMPP di di drive C atau di D lapto atau komputer anda.Jalankan XAMPP menggunakan XAMPP control. Pastikan service dari MySQL berjalandengan baik.Setelah XAMPP berhasil dijalankan maka buka aplikasi Command Prompt di windowsdengan cara ketik [cmd] di pencarian start windows 10.Pilih command prompt Halaman 8 dari 97 Setelah terbuka jalankan MySQL dengan mengetikLokasi C atau D sesuai dengan XAMPP yang ada di komputer anda. XAMPP yang ada dibuku diletakan di C. Jalankan MySQL dengan mengetikKarena password default atau bawaan XAMPP nya kosong, langsung ketik enter saja.Jika MySQL berjalan maka akan tampilKELUAR DARI MYSQLUntuk keluar dari MySQL gunakan perintah; Halaman 9 dari 97 MEMERIKSA MYSQL JALAN ATAU TIDAKUntuk mengecek MySQL berjalan atau tidak, pastikan keluar dari MySQL dulu kemudiangunakan perintah dibawah. Tekan enter jika passwordnya kosong;CEK VERSI MYSQLKita bisa mengecek versi MySQL yang digunakan menggunakan perintah;Pastikan sudah keluar dari MySQL sebelum mengecek versinya.Tampilan hasil pengecekan versi MySQLMENAMPILKAN HELP MYSQLSangat sulit mengingat semua perintah MySQL, karena itu dibutuhkan bantuan agar kitabisa mengetahui perintah MySQL yang akan digunakan.Untuk melihat bantuan MySQL, anda harus masuk dulu ke MySQL dengan perintah;Tanda jika anda sudah ada dalam MySQL adalah;Untuk menampilkan HELP bisa menggunakan perintah atau Halaman 10 dari 97 MENAMPILKAN TANGGALGunakan perintah berikut untuk menampilkan tanggal. Pastikan akhir perintah di beritanda TITIK KOMA (;) kemudian tekan enter.MENAMPILKAN WAKTU ATAU JAMMENGGUNAKAN KALKULATORUntuk menggunakan kalkulator di MySQL gunakan perintah sebagai berikut;PenjumlahanPerkalian Halaman 11 dari 97 PenguranganPembagianModulo (Sisa hasil pembagian)Hasil pembagian integer (utuh) Halaman 12 dari 97 Data Definition LanguagePembuatan Database, Tabel, & Index Halaman 13 dari 97 DDL (Data Definition Language)DDL adalah proses pembuatan RUMAH dari data. Data akan disimpan pada KOLOM,kolom disimpan di TABEL. Tabel disimpan di DATABASE.Untuk latihan kita akan membuat database APLIKASI TOKO. Desain dari database tokosebagai berikut; UNTUK CARA DESAIN DATABASE ADA DI MATERI BERBEDA DAN TIDAK ADA DI DALAM BUKU INI.MENAMPILKAN DATABASEUntuk menampilkan semua database yang ada di MySQL komputer anda. Gunakanperintah;SHOW DATABASES;Hasil perintah diatas adalah; Halaman 14 dari 97 MEMBUAT DATABASEPada latihan ini, akan membuat database dengan nama dbtoko. Gunakan perintahberikut;CREATE DATABASE nama_database;Periksa database yang sudah dibuat dengan menggunakan perintah;MENGHAPUS DATABASEJika ada database yang tidak digunakan bisa dihapus dengan perintah;DROP DATABASE nama_database; Halaman 15 dari 97 MENGAKTIFKAN DATABASEJika database sebelumnya dihapus buat lagi dengan nama [dbtoko], gunakan perintahdiatas. Sebelum membuat tabel anda harus memilih atau mengaktifkan database yangakan digunakan sebagai tempat penyimpanan tabel. Untuk memilih atau mengaktifkangunakan perintah sebagai berikut;USE nama_database;Perhatikan terjadi perubahan dari [none] menjadi [dbtoko] ini menunjukan bahwadatabase yang aktif yang akan digunakan adalah [dbtoko]TIPE DATAsebelum membuat tabel anda harus mengetahui tipe data yang akan digunakan didalam pembuatan tabel.TIPE DATA NUMERIKTipe data numerik berisi sekumpulan tipe data sejenis yang mampu menangani data-data numerik. Berikut ini beberapa tipe data yang digunakan dalam MySQL.Type Bytes KeteranganTINYINT Type ini merupakan bentuk numerik yang paling kecil dalam menangani data di dalamnya, yang dapat menangani data 1 mulai dari anggka –128 sampai dengan 127.SMALLINT Memiliki kemampuan menyimpan data lebih besar dari TINYINT, yaitu mampu untuk menangani data mulai dari - 2 32768 sampai dengan 32767.MEDIUMINT Mampu menangani data mulai dari -8388608 sampai dengan 8388607. 3INT Type INT merupakan type yang sangat sering digunakan dalam pembuatan database, karena type ini dirasakan 4 sangat cukup menampung dalam menangani data, yaitu mampu menyimpan data mulai dar i-2147483648 sampai 2147483647.BIGINT Bentuk terbesar dalam menangani data Numerik, mampu menangani data mulai dari -9223372036854775808 sampai 8 9223372036854775807. Halaman 16 dari 97 TIPE DATA UNTUK PENANGGALAN DAN WAKTUUntuk menangani data-data yang berkaitan dengan waktu dan penanggalan, Anda dapatmelihat beberapat tipe pada tabel berikut: Type KeteranganDATETIME Bentuk ini dapat menyimpan dua buah bentuk type data sekaligus,DATE yaitu penanggalan dan waktu. Bentuk yang dapat diciptakan olehTIMESTAMP DATETIME adalah '0000-00-00 00:00:00'. '0000-00-00’ merupakanTIME bentuk penanggalan yang dimulai dari tahun, bulan, dan tanggal. Sedangkan 00:00:00 adalah tempat menyimpan waktu atau jam.YEAR Misalnya: ‘2004-06-22 08:15:45’. Bentuk ini digunakan untuk menyimpan data penanggalan saja, dengan bentuk penulisan '0000-00-00'. Penggunaan ini mirip seperti pada DATETIME, hanya saja yang ditampilkan hanya penanggalan saja. Misalnya, ‘2004-06-22’. Bentuk penanggalan dengan TIMESTAMP ditampilkan berjajar tanpa ada pembatasnya, dengan bentuk penulisan 00000000000000 . Bentuk TIME hanya digunakan untuk menyimpan data berbentuk jam. Yaitu dimulai dari tahun yang dibaca dari dua karakter terakhir dan selanjutnya diikuti bulan dan tanggal .bentuk penulisanya adalah '00:00:00' . pada prototype pewaktuan tersebut dapat dijabarkan bahwa 00 perma adalah jam yang diikuti menit dan detik. Contoh 08:35:55 . Bentuk yang paling sederhana adalah YEAR yang hanya menyimpan data berupa tahun saja. Ditulis secara lengkap 4 digit, misalnya: 2004 atau 1999 .TIPE DATA STRINGDengan menyesuaikan banyaknya data, MySQL telah membagi datanya menjadibeberapa tipe, sehingga penggunaannya dapat disesuaikan. Perhatikan tabel berikut:Type Bytes KeteranganTINYTEXT Type ini merupakan bentuk terkecil dari data 255 String, yang mampu manangani data sampaiTINYBLOB dengan 2^8-1 data . 255 Bentuk TINYTEXT adalah bentuk yang samaTEXT dengan TINYBLOB , yaitu mampu menangani data 65535 sampai dengan 2^8-1 data .BLOB Bentuk TEXT salah satu bentuk type String yang 65535 mampu menangani data sampai denganMEDIUMTEXT 16777215 berukuran 2^16-1 (64K-1) data. Memiliki kemampuan sama dengan TEXT, yaitu sampai dengan 2^16-1 (64K-1) data. Dapat menyimpan data dengan ukuran cukup besar, sampai dengan 2^24-1 (16M-1) data . Halaman 17 dari 97 MEDIUMBLOB 16777215 Bentuk MEDIUMTEXT dapat Anda ganti denganLONGBLOB 4294967295 bentuk data MEDIUMBLOB, yang mampu menyimpan data sampai dengan 2^24-1 (16M-1) data. Type data LONGBLOB adalah bentuk Type data yang paling besar dalam menangani data. Data yang disimpan sampai dengan berukuran Giga Byte. Type ini memiliki batasan penyimpanan sampai dengan 2^32-1 (4G-1) data.Daftar Tipe Data String yang Sering Digunakan Type KeteranganVARCHARCHAR Bentuk ini dapat menyimpan data sampai dengan 225 karakter. Anda dapat menggunakan type ini apabila data yang dimasukan tidak lebih dariENUM batasan tersebut.SET Bentuk CHAR hamper sama dengan VARCHAR, mampu menangani data sampai dengan 225 karakter. Namun, kedua type tersebut sangat signifikan dalam menyimpan data. Misalnya, Anda membuat kolom dengan Type VARCHAR(25). Meskipun Anda memasukan data kurang dari 25 digit, tetap dibaca sebanyak digit yang dimasukkan. Namun, jika Anda menggunakan type data CHAR(4), meskipun Anda memasukkan digit kurang dari 4, akan tetap dibaca 4 digit. Digunakan untuk validasi. Type data seperti ini, biasanya, kolom ditentukan terlebih dahulu. Misalnya, pada pembuatan kolom yang isinya mengenai golongan darah A, B, AB, dan O, bentuk penulisanya adalah ENUM(‘A’,’B’,’AB’,’O’). Jika memasukkan data tidak sesuai criteria, akan terjadi kesalahan atau tidak bisa dibaca (kosong). Type data SET sebenarnya memiliki fungsi yang sama dengan type ENUM, yaitu dengan mendeklarasikan anggota dari isi kolom yang mungkin akan menjadi anggotanya.BLOB(Binary Large Object) merupakan tipe data yang biasa digunakan untukmenyimpan data berbentuk biner. Tipe data seperti LONGBLOBdapat digunakan untuk menyimpan gambar.Berikut beberapa contoh kurang tepatnya pemilihan tipe data: 1) memilih CHAR(8) atauVARCHAR(10) dan bukannya DATE untuk menyimpan tanggal; kerugiannya, lebih borostempat dan tidak bisa memanfaatkan fungsi-fungsi khusus tanggal; 2) memilih CHAR(3)atau CHAR(6) ketimbang TINYINT UNSIGNED untuk menyimpan data boolean (“YES” dan“NO”; atau “TRUE” dan “FALSE”; padahal jauh lebih irit dinyatakan dengan 1 dan 0 yanghanya menempati 1 byte); 3) memilih FLOAT atau DOUBLE dan bukannya DECIMAL Halaman 18 dari 97 untuk menyimpan jumlah uang; kerugiannya, FLOAT dan DOUBLE adalah berbasis binerdan seringkali tidak eksak dalam menyimpan pecahan desimal.Yang sering terjadi pada programer biasanya hanya mengenal single/double floatingpoint number yang tersedia di bahasa pemrograman. Padahal database umumnyamenyediakan angka pecahan berbasis desimal yang bisa digunakan menyimpan pecahandesimal.MEMBUAT TABELPembuatan tabel berdasarkan desain yang sudah dibuat sebelumnya, tabel yangpertama dibuat adalah tabel tblkelompok dengan desain sebagai berikut;MEMBUAT TABEL tblkelompoktblkelompokPastikan sebelum membuat tabel database sudah dipilih dengan benar; gunakanperintah berikut untuk pembuatan tabel. Pada desain yang dibuat menggunakan MSAccess tipe data yang digunakan adalah text maka pada MySQL menggunakan VARCHARCREATE TABLE nama_tabel (nama_kolom TIPE_DATA, nama_kolom TIPEDATA);Untuk berpindah baris gunakan ENTER. Halaman 19 dari 97 MENAMPILKAN TABELUntuk menampilkan tabel yang sudah dibuat, gunakan perintah berikut;SHOW TABLES;MENAMPILKAN STRUKTUR TABELUntuk melihat struktur tabel gunakan perintah sebagai berikut;DESCRIBE nama_tabel;Membuat Tabel tblbarangtblbarang Halaman 20 dari 97 Untuk membuat tabel tblbarang gunakan perintah sebagai berikut;Karena pada MySQL tidak ada tipe data Currency maka kita bisa menggunakan tipe dataFLOATPeriksa apakah struktur yang dibuat sudah benarMenampilkan TabelTabel yang sudah dibuat pada database bisa dilihat dengan menggunakan perintahberkut; Halaman 21 dari 97 MENAMBAH KOLOMJika dilihat pada desain terdapat kekurangan kolom pada tabel yang dibuat, kita bisamenambahkan kolom dengan perintah sebagai berikut;ALTER TABLE nama_tabel ADD nama_kolom TIPE DATA;Setelah penambahan kolom periksa tblbarang dengan perintah sebagai berikut;MERUBAH TIPE DATAPada tblbarang terdapat tipe data FLOAT pada kolom stok, kolom stok tipe data akandiganti menjadi INT. Gunakan perintah sebagai berikut;ALTER TABLE nama_tabel MODIFY nama_kolom TIPE DATA; Halaman 22 dari 97 Periksa kembali tipe data yang digunakan menggunakan perintah berikut;MEMBERI NILAI DEFAULT PADA KOLOMPada kolom [stok] tblbarang akan diberi nilai DEFAULT [0] atau nilai awal [0]. Gunakanperintah sebagai berikut;ALTER TABLE nama_tabel ALTER COLUMN nama_kolom SET DEFAULTISI_NILAI_DEFAULT_JIKA_VARCHAR_BERI_TANDA_PETIK;Periksa dengan menggunakan perintah berikut; Halaman 23 dari 97 MENGHAPUS KOLOMPada latihan untuk menghapus kolom, tambahkan kolom baru terlebih dahulu denganmenggunakan perintah sebagai berikut;Periksa struktur tabel yang sudah dibuat;Pada struktur diatas kolom stokminimal akan dihapus. Untuk menghapus gunakanperintah berikut;ALTER TABLE nama_tabel DROP COLUMN nama_kolom;Periksa struktur tabel dengan perintah berikut; Halaman 24 dari 97 MERUBAH NAMA KOLOMUntuk merubah nama kolom jika terdapat kesalahan bisa menggunakan perintahsebagai berikut;ALTER TABLE nama_tabel CHANGE kolom_lama kolom_baru TIPE DATA;Periksa struktur tabelnya;MEMBUAT TABEL tblpelanggantblpelangganPada pembuatan tabel diatas belum ada PRIMARY KEY. Untuk menambahkan PRIMARYKEY gunakan perintah ubah tipe data. Halaman 25 dari 97 MENAMBAHKAN PRIMARY KEYPerbaikan pada pembuatan tabel diatas dengan merubah tipe data pada kolom danmenambahkan PRIMARY KEY;Periksa struktur tabel dengan perintah berikut;MENAMPILKAN ENGINE YANG DIGUNAKANPada pembuatan database terdapat 2 engine atau mesin yang digunakan yaitu MYISAMdan InnoDB. Untuk proses pembuatan database relasional harus menggunakan InnoDB.MYISAM tidak bisa menerima penggunaan FOREIGN KEY.SHOW CREATE TABLE nama_tabel;Hasil yang ditampilkan adalah; Halaman 26 dari 97 MEMBUAT TABEL tblordertblorderPerintah untuk membuat tblorder;Struktur tabelPerhatikan pada desain pembuatan tabel diatas terdapat kekurangan satu kolom yaitukolom [faktur] yang letaknya dibawah kolom [idpelanggan]. Halaman 27 dari 97 MENAMBAH KOLOM SETELAH KOLOMALTER TABLE nama_tabel ADD nama_kolom TIPE DATA AFTERnama_kolom_sebelumnya;Hasilnya adalah;MEMBUAT TABEL tblorderdetailtblorderdetailPerintah membuat tblorderdetail Halaman 28 dari 97 Struktur tabel yang sudah dibuat;MEMBUAT INDEXIndex digunakan untuk mempercepat proses pencarian data terutama pada data yangjumlahnya diatas ribuan. Pada tabel diatas yang biasa digunakan untuk pencarian dataadalah nama barang dan nama pelanggan.CREATE INDEX nama_index ON nama_tabel (kolom);Buat index untuk tabel tblbarang dengan perintah sebagai berikut; Halaman 29 dari 97 MENAMPILKAN INDEXIndex yang sudah dibuat bisa ditampilkan dengan perintah;SHOW INDEX FROM nama_tabel;Hasilnya adalah;MENGHAPUS INDEXJika INDEX tidak digunakan bisa dihapus dengan perintah;DROP INDEX nama_index ON nama_tabel; Halaman 30 dari 97 Data Manipulation LanguageInsert, Delete, Update, Select, View, Trigger, Procedure, & Function Halaman 31 dari 97 INSERT SEMUA KOLOMInsert semua kolom digunakan untuk memasukan data pada semua kolom tabel.Sebelum melakukan INSERT data periksa dulu tabel yang akan digunakan.Sebagai latihan akan menggunakan tblkelompok, lihat dulu kolom tblkelompokPada tblkelompok terdapat 2 kolom yang akan di INSERT datanya, yaitu [idkelompok],[kelompok].INSERT INTO nama_tabel VALUES (kolom, kolom, semua_kolom);Untuk memeriksa apakah data yang di INSERT kan berhasil gunakan perintah;SELECT * FROM nama_tabel; Halaman 32 dari 97 INSERT SEBAGIAN KOLOMINSERT sebagian kolom digunakan untuk melakukan INSERT HANYA PADA kolom yangdisebutkan.INSERT INTO nama_tabel (kolom_yang_disebut) VALUES(isi_untuk_semua_kolom_yang_disebut);Sebagai latihan lakukan INSERT data sehingga diperoleh data sebagai berikut;DELETE SEBAGIAN RECORD (BARIS DATA)Untuk menghapus sebagian baris gunakan perintah;DELETE FROM nama_tabel WHERE baris_yang_akan_dihapus;Baris Data (Record) setelah ada yang dihapus. Halaman 33 dari 97 DELETE SEMUA RECORDUntuk menghapus semua baris data bisa dilakukan dengan perintah;DELETE FROM nama_tabel;Periksa tabel yang sudah dihapus menggunakan perintah;Karena data sudah dihapus maka yang tampil adalah KOSONG.UPDATE SEBAGIAN RECORDKarena semua data sudah dihapus semua pada materi delete, isi dulu data padatblkelompok sebagai latihan dengan data sebagai berikut;Pada tabel diatas UBAH data ‘Jajan’ menjadi ‘Snek’ menggunakan perintah sebagaiberikut;UPDATE nama_tabel SET nama_kolom=isi_kolom WHEREnama_kolom=baris_yang_dipilih_untuk_diubah; Halaman 34 dari 97 Periksa data yang sudah diubahUPDATE SEMUA RECORDUntuk mengubah semua data bisa dilakukan dengan perintah sebagai berikut;UPDATE nama_tabel SET nama_kolom=isi_kolom;Periksa data yang sudah diubah dengan perintah berikut;Lakukan UPDATE lagi sebagai latihan sehingga hasilnya sebagai berikut; Halaman 35 dari 97 TABEL MASTER DAN TABEL TRANSAKSI (DETAIL)Lihat struktur tblkelompok dan tblbarang;tblkelompoktblbarangTABEL MASTERTabel Master adalah tabel yang MEMASUKI tabel lain. Pada contoh diatas. Terdapatkolom [idkelompok] dari tabel [tblkelompok] yang MEMASUKI tabel [tblbarang]. Jaditabel [tblkelompok] menjadi TABEL MASTER.TABEL TRANSAKSITabel Transaksi adalah tabel yang DIMASUKI tabel lain. Pada contoh diatas tabel[tblbarang] DIMASUKI kolom [idkelompok] yang berasal dari tabel [tblkelompok]. Jadiyang tabel [tblbarang] menjadi TABEL TRANSAKSI.PRIMARY KEY DAN FOREIGN KEYPada tabel [tblbarang] terdapat kolom yang menjadi kunci atau KEY yang digunakanuntuk membedakan baris data yang satu dengan dengan yang lain yaitu [idbarang].Kolom yang berbeda antara baris data yang satu dengan yang lain disebut denganPRIMARY KEY.Pada tblbarang juga terdapat kolom yang masuk dari tabel lain yaitu [tblkelompok].Kolom yang masuk ke tblbarang adalah [idkelompok]. Kolom yang masuk dari tabel laindisebut dengan FOREIGN KEY. Halaman 36 dari 97 RELATIONAL DEPENDENCIES (HUBUNGAN KETERGANTUNGAN)DATABASE dibuat agar pengaturan data benar sesuai dengan yang diharapkan.Relational Dependencies adalah pengaturan agar tabel yang satu terhubung dengantabel yang lain. Sehingga data yang masuk ke satu tabel bergantung dari tabel yang laindalam bentuk BER-URUTAN; Perhatikan desain database berikut;Yang pertama kali bisa di isi adalah tabel [tblkelompok] dan [tblpelanggan]. Setelahtabel [tblkelompok] di isi maka tabel [tblbarang] baru bisa di isi. Jadi tabel [tblbarang]TERGANTUNG (DEPENDENCIES) dari tabel [tblkelompok]. Dibuat demikian agar setiapbarang yang masuk pada tabel [tblbarang] mempunyai kelompok.[tblorder] baru bisa di isi jika tabel [tblpelanggan] SUDAH di isi. Maka tabel [tblorder]TERGANTUNG pada tabel [tblpelanggan] sehingga hanya pelanggan yang sudah masukpada tabel [tblpelanggan] saja yang bisa melakukan order.[tblorderdetail] baru bisa di isi jika [tblorder] dan tabel [tbbarang] SUDAH di isi. Makatabel [tblorderdetail] TERGANTUNG pada tabel [tblorder] dan [tblpelanggan]. Jadi hanyapelanggan yang sudah melakukan order saja yang bisa diambilkan barangnya. Ini semuadisebut dengan RELATIONAL DEPENDENCIES (HUBUNGAN KETERGANTUNGAN).PROSES BISNIS (ALUR KERJA)Pada relasi tersebut terdapat alur kerja yang sering disebut dengan PROSES BISNIS.Proses bisnis pada relasi tersebut yaitu:Sebelum toko dibuka pemilik akan mengelompokan barang – barang yang akan dijual.Kelompok barang tersebut akan disimpan di tabel kelompok.Contoh:Toko akan menjual Beras, Gula, Tepung Halaman 37 dari 97 Kemudian pada kelompok tersebut akan dibuat DETAIL isinya. Perhatikan tabel dibawah;Kelompok Isi kelompokBeras Beras Rojo LeleGula Beras Cianjur Beras MediumTepung Beras Mahal Gula Putih Gula Merah Gula Batu Gula Aren Tepung Terigu Tepung Tapioka Tepung KanjiPada pembuatan database setiap kelompok akan di wakili oleh kolom PRIMARY KEYyang akan dimasukan ke tabel yang lain untuk menunjukan bahwa kolom tersebutadalah anggota dari tabel yang lain.Pada tabel [tblbarang] diatas, [idkelompok] akan menunjukan bahwa kolom tersebutadalah isi dari tabel [tblkelompok] Halaman 38 dari 97 MEMBUAT RELASI ANTAR TABELLihat dulu struktur tabel yang akan dibat relasinya. Pada tblbarang terlihat strukturseperti pada gambarPerintah untuk membuat relasi adalah sebagai berikut;ALTER TABLE nama_tabel_detail ADD CONSTRAINTFK_foreign_key_pada_tabel_detail FOREIGN KEY (foreign_key) REFRENCESnama_tabel_master (primary_key_tabel_master) ON UPDATE CASCADE ONDELETE RESTRICT ;ON UPDATE CASCADE : jika kolom primary key pada tabel master maka kolom foreignkey pada tabel transaksi akan berubah.ON DELETE RESTRICT : Kolom primary key di tabel master TIDAK BISA di hapus jikakolom tersebut masih digunakan pada tabel transaksi. ON DELETE CASCADE jika barispada kolom master dihapus maka semua baris data yang menggunakan isi tabel masterpada tabel transaksi akan terhapus :Untuk melihat hasil pembuatan relasi gunakan perintah berikut; Halaman 39 dari 97 Tampilan jika relasi berhasil dibuat adalah;MENGUJI HASIL PEMBUATAN RELASIUntuk menguji hasil pembuatan relasi lakukan INSERT data pada tabel master terlebihdahulu baru kemudian ke tabel transaksi.Tampilkan struktur tabel untuk memudahkan proses insert data;Isi tabel transaksi sesuai dengan idkelompok yang akan digunakan Halaman 40 dari 97 Karena idbarang AUTO_INCREMENT maka kolom bisa diganti dengan ‘’ (petik kosong)Lakukan insert data sehingga muncul tabel berikut;PENGUJIAN INSERTInsert pada tabel [tblbarang] HANYA BISA dilakukan menggunakan data yang tersediapada tabel master. [Idkelompok] pada tabel master yang tersedia hanya [6,7,8]..Perhatikan hasil pengujian berikut;Pada pengujian INSERT idkelompok yang digunakan adalah 9 yang TIDAK TERSEDIA padatabel master [tblkelompok].PENGUJIAN UPDATECoba lakukan update pada tabel master kemudian periksa di tabel transaksi.Ubah idkelompok tepung dari 8 menjadi 9 dengan perintah berikut; Halaman 41 dari 97 Periksa perubahan pada tblkelompok;Periksa pada tblbarang;Pada ON UPDATE CASCADE jika kolom tabel master berubah maka kolom tabel transaksijuga berubahPENGUJIAN DELETEPengujian delete dilakukan dengan menghapus tabel master.Karena [ idkelompok] 9 sudah digunakan pada tabel transaksi maka data tersebut tidakbisa dihapus seuai dengan relasi yang dibuat yaitu ON DELETE RESTRICT. Data yang bisadihapus hanya yang belum digunakan pada tabel transaksi. coba INSERT kan data barupada tabel master; Halaman 42 dari 97 Periksa data yang sudah dimasukanKarena kolom [idkelompok] 10 belum digunakan pada tabel transaksi maka kolomtersebut bisa dihapus. Lakukan penghapusan menggunakan perintah berikut;Periksa tabel yang sudah dihapus;PEMBUATAN VIEWView digunakan untuk menggabungkan tabel master dan tabel transaksi menjadisebuah tabel baru agar lebih mudah dilihat dan digunakan.CREATE VIEW nama_view AS SELECT tabel_transaksi.kolom_transaksi,tabel_master.kolom_master FROM tabel_transaksi INNER JOIN tabel_masterON tabel_transaksi.kolom_transaksi = tabel_master.kolom_master; Halaman 43 dari 97 MENAMPILKAN SEMUA VIEW YANG SUDAH DIBUATView yang sudah dibuat bisa dilihat dengan perintah;SHOW FULL TABLES IN nama_database WHERE TABLE_TYPE LIKE ‘VIEW’;MELIHAT ISI VIEWUntuk melihat isi VIEW sama dengan melihat isi tabelSELECT * FROM nama_view;MENGHAPUS VIEWJika VIEW yang sudah dibuat tidak digunakan lagi bisa di hapus dengan menggunakanperintah berikut;DROP VIEW nama_view;Periksa daftar view dengan perintah berikut; Halaman 44 dari 97 SELECT SEMUA KOLOM (*)Select semua adalah menampilkan semua kolom dari tabel atau VIEWSELECT * FROM nama_tabel_atau_nama_view;SELECT SEBAGIAN KOLOMSelect sebagian kolom adalah menampilkan hanya pada kolom yang dipilihSELECT nama_kolom, nama_kolom FROM nama_tabel_atau_nama_view; Halaman 45 dari 97 SELECT ORDERJika VIEW pada latihan diatas sudah dihapus, silahkan buat ulang untuk latihan materiselanjutnya;SELECT ORDER adalah cara untuk menampilkan data dalam urutan naik atau turunJika NAIK menggunakan ASCJika TURUN menggunakan DESCSELECT * FROM nama_tabel_atau_view ORDER BY nama_kolom ASC;Hasil select ORDER BY nama_kolom ASCHasil select ORDER BY nama_kolom DESC Halaman 46 dari 97 SELECT GROUPPerintah SELECT GROUP digunakan untuk mengelompokan data sesuai dengankelompok dari kolom yang dipilih.SELECT * FROM nama_tabel_atau_view GROUP BY nama_kolom;PENGUJIAN WHEREPengujian WHERE pengujian pada SQL yang bisa diletakan di belakang:  SELECT  DELETE  UPDATEPengujian akan menjalankan SELECT, DELETE, UPDATE jika kondisi yang diuji terpenuhi  Operator pembanding [=, >, <, <>, >=, <=, LIKE]  Operator LOGIKA (AND, OR)  SELECTContoh pengujianSELECT * FROM nama_tabel_atau_view WHERE pengujian ORDER BYnama_kolom; Halaman 47 dari 97 SELECT * FROM nama_tabel_atau_view WHERE nama_kolom LIKE ‘%_apapun’;% adalah sebutan untuk sembarang atau apapunContoh:%a artinya awalan sembarang yang penting akhiranya ab% artinya awalan b akhiran sembarang Halaman 48 dari 97 %d% artinya awalan sembarang dan akhiran sembarang yang tengahnya ada huruf dSUBQUERY (SELECT IN SELECT)Subquery adalah SELECT yang ada di dalam SELECT. Sebelum berlatih menggunakansubquery tambahkan data pada [tblkelompok].sehingga datanya akan tampil seperti berikut; Halaman 49 dari 97


Langkah langkah membuat database di MySQL?

MySQL Membuat Database dan Table.
Buka command prompt dengan cara tekan ctrl + R keudian ketik cmd lalu enter..
Buka MySQL dengan cara mengetikan cd AppServ\MySQL\bin\MySQL..
Bila meminta password, masukkan password yang kalian buat (tapi biasanya password defaultnya “root”).

Apa itu MySQL dan apa fungsinya?

Secara umum, MySQL adalah sebuah software yang berfungsi untuk membuat dan mengelola berbagai informasi yang ada pada database di dalam sebuah server dengan bahasa pemrograman SQL. Salah satu penerapan paling umum dari MySQL adalah sebagai database untuk sebuah website atau aplikasi.

Apa itu query di MySQL?

MySQL Query adalah perintah atau instruksi yang dapat digunakan untuk mengelola database atau tabel dalam database MySQL. Query lebih dikenal dengan sebutan SQL (Structured Query Language) yang artinya adalah sebuah bahasa yang digunakan untuk mengakses data dalam basis data relasional.

Tipe tipe data apa saja yang disediakan oleh MySQL?

Secara umum tipe data pada MySQL dibagi menjadi 4 yaitu: Numeric Values yaitu angka atau bilangan seperti 10; 123; 100.50; -10; 1.2E+17; 2.7e-11; dan sebagainya..
DATETIME. Kombinasi tanggal dan waktu. ... .
DATE. Kombinasi tanggal dan waktu. ... .
TIMESTAMP. TIMESTAMP [(M)] ... .