Aplikasi Database Dosen : Sarwo, Skom,.Mkom Url : Http://sarwojowo.net STMIK mercusuar Chapter III Aplikasi Database Dosen : Sarwo, Skom,.Mkom Url : Http://sarwojowo.net Email : sarwo.jowo@gmail.com
Database itu Apa ? STMIK-mercusuar
Tipe data Field Tipe data Numerik Tipe data String TINYINT, SMALLINT, MEDIUMINT, INT, INTEGER, BGINT, FLOAT(X), FLOAT, DOUBLE, DOUBLE PRECISION, REAL, DECIMAL(M,D), NUMERIC(M,D) Tipe data String CHAR, VARCHAR, TINYBLOB, TINYTEXT, BLOB, TEXT, MEDIUMBLOB, MEDIUMTEXT, LONGBLOB, LONGTEXT, ENUM(‘elemen1’, ‘elemen2’, …), SET(elemen1’, ‘elemen2’, …) Tipe data char() dan varchar() Tipe data Tanggal DATETIME, DATE, TIMESTAMP, TIME, YEAR STMIK-mercusuar
Operator SQL Operator matematika Operator range Operator kesamaan + − * / % Operator range < > <= >= Operator kesamaan = <> Operator logika && || STMIK-mercusuar
Pernyataan (statement) Ada Dua (2) Data Definition Language (DDL) yang mendefinisikan struktur suatu data. Perintah-perintah SQL yang termasuk DDL antara lain: CREATE – untuk membuat tabel. DROP – untuk menghapus suatu tabel. Data Manipulation Language (DML) yang dapat mencari (query) dan mengubah (modify) suatu tabel. Perintah-perintah SQL yang termasuk DML antara lain: SELECT – untuk membaca (query) isi tabel. Syntaks: SELECT [ ALL | DISTINCT |*] FROM [Nama Table] WHERE [Kondisi ]; STMIK-mercusuar
Pernyataan (statement) Ada Dua (2) INSERT – untuk memasukkan data ke table. Syntaks: INSERT INTO [Nama Tabel]([Nama Kolom]) VALUE [. Ekspresi]; UPDATE – untuk mengubah isi tabel. Syntaks: UPDATE [Nama Tabel] SET [Nama Kolom= Ekspresi] WHERE [Kondisi]; STMIK-mercusuar
CREATE Sintaks: Contoh: create DATABASE nama; atau create TABLE nama; create DATABASE db_akademik; create tabel: create TABLE mahasiswa ( nim SMALLINT(6) NOT NULL PRIMARY KEY, Nama CHAR(20), Tanggal_lahir DATE, alamat VARCHAR(3), nomortlp VARCHAR(12) ); STMIK-mercusuar
DELETE – untuk menghapus isi tabel. Syntaks: DELETE FROM [Pemakai.]Nama Table[@Nama Database][WHERE Kondisi];
Perintah INSERT Sintaks: Contoh : insert INTO NAMA_TABEL (kolom1, kolom2, kolom3,...) values ('nilai1',' nilai2',' nilai3',...); Contoh : insert INTO mahasiswa (nim,nama,tanggal_lahir) values (1111,”Setia Budi”,”1985-06-25”); insert INTO mahasiswa values (1112,”Dewi Sekartaji”,”1985-10-01”), (1113,”Adinda Cendrakasih”,”1986-01-10”); STMIK-mercusuar
Perintah SELECT Sintaks: Contoh: select kolom1, kolom2, kolom3, [...] FROM NAMA_TABEL; Contoh: select * FROM mahasiswa; select nim, Nama FROM mahasiswa; STMIK-mercusuar
Perintah SELECT … [lanjutan] Select banyak tabel mengambil data dari banyak tabel sekaligus Sintaks: select TABEL1.tabel_kolom1, TABEL1.tabel_kolom2, TABEL2.tabel_kolom1, TABEL2.tabel_kolom2 FROM TABEL1, TABEL2; Order by untuk mengurutkan (ascending atau descending) record hasil query berdasarkan suatu kolom. Select kolom1, kolom2, […] FROM NAMA_TABEL ORDER BY nama_kolom (asc/dsc); STMIK-mercusuar
Perintah SELECT … [lanjutan] Where menentukan kondisi atau persyaratan dari query Sintaks: select kolom1, kolom2, […] FROM NAMA_TABEL WHERE persyaratan; Suatu pernyataan kondisional mempunyai bagian sisi kiri yang merupakan kolom tabel dan bagian sisi kanan kondisi yang dijadikan syarat pencarian. Contoh persyaratan: WHERE nama_kolom = kondisi; STMIK-mercusuar
Mengubah Struktur Tabel Sintaks: alter TABLE NAMA_TABEL ADD/DROP NAMA_KOLOM; alter TABLE NAMA_TABEL CHANGE KOLOM_PERINTAH; alter TABLE NAMA_TABEL RENAME NAMA_TABEL_BARU; Contoh: Menambahkan sebuah kolom baru ke dalam tabel mahasiswa: alter TABLE mahasiswa ADD Hobi; Menghapus kolom: DROP Hobi; Mengganti nama tabel: alter TABLE mahasiswa RENAME mahasiswatrun; STMIK-mercusuar
UPDATE Data Sintaks: Contoh: update NAMA_TABEL SET kolom1=“nilai”, kolom2=“nilai”, kolom3=“nilai” WHERE kolom_kunci = “nilai”; Contoh: Mengubah nilai kolom Nama untuk mahasiswa dengan nim = 1111. UPDATE mahasiswa SET Nama = “Setiawan Budi” WHERE nim = '1111'; STMIK-mercusuar
Menghapus (DELETE) Sintaks: Contoh: delete FROM NAMA_TABEL WHERE persyaratan; Contoh: Menghapus record pada tabel mahasiswa yang field nim-nya bernilai 1114 : delete FROM mahasiswa WHERE nim=1114; STMIK-mercusuar
Predikat Predikat diletakkan setelah klausa WHERE untuk pencarian record database agar mendapatkan string, karakter atau range tertentu. LIKE dan NOT LIKE BETWEEN LIMIT INNER JOIN LEFT JOIN RIGHT JOIN UNION UNION ALL Sub-Query STMIK-mercusuar
TRUNCATE Sintaks: Contoh: untuk membersihkan tabel secara keseluruhan (sama seperti DELETE tanpa kondisi), yaitu dengan cepat menghapus semua record tanpa menghapus struktur tabel. Sintaks: truncate TABEL NAMA_TABEL; Contoh: Menghapus semua record dalam tabel mahasiswa: truncate TABLE mahasiswa; STMIK-mercusuar
Sintaks dasar dari SELECT yang melibatkan LIKE adalah LIKE dan NOT LIKE LIKE untuk mendapatkan record yang memenuhi sebagian kriteria pencarian yaitu mencari data yang menyerupai atau seperti. Perintah LIKE sering dikombinasikan dengan tanda “persen” (%) dan “underscore” (_). “Persen” digunakan di awal atau akhir teks kriteria sedangkan “underscore” dimanapun diinginkan. Sintaks dasar dari SELECT yang melibatkan LIKE adalah select kolom1, kolom2, […] FROM NAMA_TABEL WHERE kolom_tabel LIKE %string%; NOT LIKE merupakan lawan dari LIKE. Semua data yang masuk kriteria LIKE secara otomatis tidak masuk kriteria NOT LIKE. ; STMIK-mercusuar
LIKE dan NOT LIKE BETWEEN LIMIT digunakan untuk menyeleksi nilai-nilai yang berada dalam kisaran (range), misalnya menampilkan “student” yang mempunyai IPK antara 3,00 sampai 3,50. Sintaks perintah SELECT dengan BETWEEN adalah select kolom1, kolom2, […] FROM NAMA_TABEL WHERE nama_kolom BETWEEN nilai1 and nilai2; LIMIT memungkinkan pembatasan jumlah record yang diambil dari database. Sintaks: select kolom1, kolom2, […] FROM NAMA_TABEL LIMIT jumlah_limit; STMIK-mercusuar
INNER JOIN LEFT JOIN RIGHT JOIN JOIN digunakan bersama SELECT untuk mengkombinasikan kolom dari satu tabel dengan kolom pada tabel lain. Proses utama yang dilakukan oleh JOIN adalah mencocokkan nilai pada field kunci pada kedua tabel INNER JOIN mengembalikan semua baris sebagai hasil yang memenuhi suatu kondisi LEFT JOIN Suatu LEFT JOIN mengembalikan semua baris sisi kiri kondisional bahkan jika tidak ada sisi kanan yang memenuhi sekalipun RIGHT JOIN Suatu RIGHT JOIN akan menampilkan baris-baris sisi kanan kondisional yang memenuhi atau tidak memenuhi kondisi. STMIK-mercusuar
UNION untuk menggabung dua tabel, menempatkan dua query terpisah secara bersama membentuk satu tabel UNION akan memberikan hasil terbaik saat menggunakan dua tabel dengan kolom serupa karena setiap kolom harus mempunyai tipe data sama Sintaks dasar: select kolom1, kolom2 FROM NAMA_TABEL select kolom1, kolom2 FROM NAMA_TABEL; STMIK-mercusuar
UNION ALL memilih semua baris dari setiap tabel dan mengkombinasikannya ke dalam satu tabel Perbedaan antara UNION dan UNION ALL yaitu UNION ALL tidak akan menghapus (mengeliminir) baris-baris yang sama (duplicate rows) – hanya mengambil semua baris dari semua tabel sesuai query yang dikirim ke server database STMIK-mercusuar
Sub-Query adalah query SELECT yang ditempatkan di dalam suatu pernyataan SQL lain. dapat diletakkan sebagai bagian dari query utama : SELECT, INSERT, UPDATE, DELETE, SET,…. Sintaks: select kolom1, kolom2, kolom3 […] FROM NAMA_TABEL WHERE kolom_tabel = (select kolom1, kolom2, kolom3 […] FROM NAME_TABEL_LAIN);
Terima Kasih