Sistem Basis Data 1240043 Pertemuan Ke7 Structure Query

Sistem Basis Data (1240043) Pertemuan Ke-7 Structure Query Language (SQL) Herry Sofyan Sistem Informasi UPN “Veteran” Yogyakarta 1

Deskripsi Pengenalan SQL ¿ Pengelompokan perintah SQL (DDL, DML) ¿ Perintah-perintah DDL contoh penggunaannya ¿ Sistem Informasi UPN “Veteran” Yogyakarta 2

Tujuan Instruksional Khusus (TIK) ¿ Mahasiswa dapat menjelaskan perbedaan macam-macam perintah SQL. ¿ Mahasiswa dapat menggunakan perintah-perintah DDL untuk mendefinisikan tabel. Sistem Informasi UPN “Veteran” Yogyakarta 3

SQL Structured Query Language (SQL) ¿ SQL Berfungsi sebagai bahasa query interaktif sekaligus juga sebagai bahasa pemrograman basis data. ¨ SQL meliputi: · Pendefinisi data (DDL) · Memanipulasi data (DML) ¨ SQL relatif mudah untuk dipelajari ¨ SQL standar bentuk penulisannya mengikuti aturan ANSI, pertama kali dikembangkan oleh IBM, San Jose Research Laboratory Sistem Informasi UPN “Veteran” Yogyakarta 4

SQL Tipe Data ¿ Pemilihan tipe data merupakan suatu hal yang cukup penting dalam mengelola data. Setiap atribut yang didenisikan harus memiliki tipe data yang sesuai dengan kebutuhan data diolah. Hal tersebut tidak terlepas dari masalah efisiensi ruang penyimpanan data. ¿ Tiap bahasa pemrograman mempunyai kumpulan tipe data built-in sehingga memungkinkan mendeklarasikan variabel dan menyediakan kumpulan operasi untuk memanipulasi variable tersebut. Sistem Informasi UPN “Veteran” Yogyakarta 5

SQL Tabel 7. 1. Tipe data teks pada My. SQL No Tipe Data Keterangan Kapasitas 1 CHAR(M) Fix L : 1 – 255 char M bytes, 1 <= M <= 255 2 VARCHAR(M) Var L: 1 – 255 char L+1 bytes, dimana L <= M dan 1 <= M <= 255 3 TINYTEXT L max : 255 char L+1 bytes, dimana L < 2^8 4 TEXT, BLOB L max : 65535 char L+2 bytes, dimana L < 2^16 5 MEDIUMTEXT L max : 16777215 char 6 LONGTEXT L+3 bytes, dimana L < 2^24 L max : 4294967295 char L+4 bytes, dimana L < 2^32 Teknik Informatika UPN[V]Yk Sistem Informasi UPN “Veteran” Yogyakarta 6

SQL Tabel 7. 2. Tipe data numerik pada My. SQL No Tipe Data Keterangan Kap. 1 TINYINT() (-128 s/d 127) / (0 s/d 255) 1 byte 2 SMALLINT() (-32768 s/d 32767) / (0 s/d 65535) 2 byte 3 MEDIUMINT() (-8388608 s/d 8388607) / (0 s/d 16777215) 3 byte 4 INT() (-2147483648 s/d 2147483647) / (0 s/d 4294967295) 4 byte 5 BIGINT() 0 sd 18446744073709551615 8 byte Sistem Informasi UPN “Veteran” Yogyakarta 7

SQL Tabel 7. 3. Tipe data numerik (lanjutan…) No Tipe Data Keterangan Kap. FLOAT -3. 402823466 E+38 s/d -1. 175494351 E-38, 0 dan 1. 175494351 E-38 s/d 3. 402823466 E+38 4 byte 2 DOUBLE -1. 7976931348623157 E+308 s/d -2. 2250738585072014 E-308, 0 dan 2. 2250738585072014 E-308 s/d 1. 7976931348623157 E+308. 8 byte 3 REAL Sama dengan DOUBLE 8 byte 4 DECIMAL(M, D) Sama dengan DOUBLE, M=lebar D=desimal M byte (D+2, if M < D) 5 NUMERIC(M, D) Sama dengan DECIMAL M byte (D+2, if M < D) 1 Sistem Informasi UPN “Veteran” Yogyakarta 8

SQL Data Definition Language (DDL) ¿ DDL berkaitan dengan perintah-perintah untuk mendenifisikan tabel-tabel yang terdapat dalam suatu basis data. ¿ Membuat Struktur Basis Data CREATE SCHEMA AUTHORIZATION <creator>; CREATE DATABASE <nama database>; · Contoh: CREATE SCHEMA AUTHORIZATION RONALD; CREATE DATABASE PERWALIAN; Sistem Informasi UPN “Veteran” Yogyakarta 9

SQL ¿ Batasan Integritas SQL ¨ Integritas Entitas PRIMARY KEY (Kunci Utama) NOT NULL dan UNIQUE ¨ Integritas Referensial FOREIGN KEY ON DELETE ON UPDATE Sistem Informasi UPN “Veteran” Yogyakarta 10

SQL ¿ PRIMARY KEY ¨ Sebuah primary key (kunci primer) digunakan untuk mengenali secara unik setiap baris dalam sebuah tabel. Sebuah primary key dapat terdiri dari satu atau beberapa field dalam sebuah tabel. Jika yang digunakan sebagai primary key adalah gabungan dari beberapa field maka disebut dengan composite key (kunci gabungan). ¿ NOT NULL ¨ Sebagai default, sebuah kolom dapat bernilai NULL. Bila diinginkan kolom tersebut harus terisi data (tidak boleh NULL) maka digunakan NOT NULL ketika mendefinisikan kolom tersebut. Sistem Informasi UPN “Veteran” Yogyakarta 11

SQL ¿ UNIQUE ¨ UNIQUE digunakan untuk memastikan bahwa setiap nilai dalam sebuah kolom pasti berbeda. ¿ CHECK ¨ CHECK digunakan untuk memastikan bahwa nilai dalam sebuah kolom telah sesuai dengan kondisi yang diinginkan. ¿ FOREIGN KEY ¨ Sebuah foreign key (kunci tamu) adalah sebuah field atau beberapa field yang sama dengan primary key pada tabel lainnya, yang berfungsi sebagai penghubung. Tujuan dibuatnya foreign key adalah untuk meyakinkan integritas referensial (referential integrity) dari sebuah data. Sistem Informasi UPN “Veteran” Yogyakarta 12

SQL ¿ Membuat Struktur Tabel CREATE TABLE <nama tabel>( <nama atribut-1 tipe data atribut-1, nama atribut-2 tipe data atribut-2, nama atribut-n tipe data atribut-n, primary key, foreign key>); Contoh 1: CREATE TABLE wali( id_wali tinyint nip char(9) nama varchar(24) fungsional varchar(15), PRIMARY KEY (id_wali)); NOT NULL UNIQUE, NOT NULL, Sistem Informasi UPN “Veteran” Yogyakarta 13

SQL Contoh 2: CREATE TABLE Mahasiswa( nomhs char(9) NOT NULL UNIQUE, nama varchar(22) NOT NULL, sks tinyint NOT NULL, ipk decimal(4, 2) NOT NULL, id_wali tinyint NOT NULL, PRIMARY KEY (nomhs), FOREIGN KEY (id_wali) REFERENCES Wali(id_wali) ON DELETE RESTRICT ON UPDATE CASCADE); Sistem Informasi UPN “Veteran” Yogyakarta 14

SQL ¿ Input Data INSERT INTO <nama tabel> VALUES(harga atribut 1, harga atribut 2, . . dan seterusnya); Contoh: INSERT INTO Wali VALUES (5, ‘ 095065123’, ’ Ir. Satriyo Madya, MSc. ’, ’Lektor Kepala’); Contoh: INSERT INTO Mahasiswa VALUES (‘ 111900555’, ’ Siswanto’, 18, 2. 48, 5); Sistem Informasi UPN “Veteran” Yogyakarta 15

SQL ¿ Mengubah Struktur Tabel ALTER TABLE <nama tabel> MODIFY (<nama atribut> <karakteristik atribut baru>); Contoh : ALTER TABLE Wali modify(id_wali INT); ¿ Menambah Struktur Tabel ALTER TABLE <nama tabel> ADD (<nama atribut> <karakteristik atribut>); Contoh: ALTER TABLE Wali ADD(alamat varchar(25)); Sistem Informasi UPN “Veteran” Yogyakarta 16

SQL ¿ Mendefinisikan Primary dan Foreign Key ALTER TABLE <nama tabel> ADD PRIMARY KEY (nama atribut) Contoh: ALTER TABLE Dosen ADD PRIMARY KEY (kd_dosen); ALTER TABLE <nama tabel> ADD FOREIGN KEY (nama atribut) Contoh: ALTER TABLE Kelas ADD FOREIGN KEY (kd_dosen); Sistem Informasi UPN “Veteran” Yogyakarta 17

SQL ¿ Mencopy Sebagian Tabel Contoh: CREATE TABEL dosen( id_dosen tinyint NOT NULL UNIQUE, nip char(9) NOT NULL, nama varchar(24) NOT NULl); INSERT INTO Dosen (id_dosen, nip, nama) SELECT id_wali, nip, nama FROM Wali; Sistem Informasi UPN “Veteran” Yogyakarta 18

SQL ¿ Membuat Index CREATE INDEX <nama index> ON <nama tabel> (nama kolom); Contoh: CREATE INDEX idx_wali ON Wali(id_wali); ¿ Menghapus Semua Isi Tabel TRUNCATE TABLE <nama tabel> Contoh: TRUNCATE TABLE Wali; TRUNCATE TABLE Mahasiswa; Sistem Informasi UPN “Veteran” Yogyakarta 19

SQL ¿ Menghapus Tabel DROP TABLE <nama tabel> Contoh: DROP TABLE Wali; DROP TABLE Mahasiswa; Sistem Informasi UPN “Veteran” Yogyakarta 20

Ringkasan Materi ¿ SQL (Structured Query Language) memiliki fungsi sebagai bahasa query interaktif sekaligus juga sebagai bahasa pemrograman basis data. Secara umum perintah-perintah di dalam SQL dikelompokkan menjadi DDL dan DML. ¿ DDL berfungsi untuk mendefinisikan objek dalam suatu basis data terdiri dari perintah create, alter dan drop. Sistem Informasi UPN “Veteran” Yogyakarta 21

Soal Latihan 1. Secara umum perintah-perintah SQL dikelompokkan menjadi berapa ? Sebutkan ! 2. Sebutkan perintah-perintah yang termasuk dalam DDL. 3. Buatlah sebuah perintah SQL untuk mendefiniskan objek sebagai berikut: ¨ Buku yang berisi kode buku judul, pengarang, penerbit, tahun terbit dan jumlah stok. Sistem Informasi UPN “Veteran” Yogyakarta 22

Referensi ¿ Buku Teks (Textbook) 1. Date, C. J. 2000, An Introduction to Database System, Addison Wesley Publishing Company, Vol. 7, New York. 2. Fathansyah, 1999, Basis Data, Informatika, Bandung. ¿ Referensi 3. Elmasri, Ramez; Navathe, Shamkant B. , 2001, Fundamentals of Database Systems, The Benjamin/ Cummings Publishing Company, Inc. , California. 4. Kroenke, Auer, 2016, Database Processing fundamentals, Design and Implementation, Pearson Sistem Informasi UPN “Veteran” Yogyakarta 23
- Slides: 23