Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
DASAR SQL (STRUCTURED QUERY LANGUAGE) BASIS DATA Erna Kumalasari Nurnawati SQL • SQL: Structured Query Language • Pronounced “S-Q-L” or “sequel” • Merupakan standar query language yang didukung oleh kebanyakan DBMS komersial 5/22/2017 erna kumalasari nurnawati 2 Sejarah SQL Sejarah • IBM System R • ANSI SQL89 ANSI SQL92 (SQL2) SQL3 (still under construction after years!) 5/22/2017 erna kumalasari nurnawati 3 SQL • Data Definition Language (DDL) • Data Manipulation Language (DML) 5/22/2017 erna kumalasari nurnawati 4 DDL (Data Definition Language) • DDL adalah perintah yang digunakan untuk mendefinisikan objek pada database seperti table, field dll. 5/22/2017 erna kumalasari nurnawati 5 DDL (Data Definition Language) Perintah dari kelompok DDL: • Membuat (Create) Database • Menggunakan Database • Menghapus Database • Membuat Tabel • Melihat Struktur Tabel • Menghapus Tabel • Modifikasi Struktur Tabel 5/22/2017 erna kumalasari nurnawati 6 DDL.1: Membuat Database • Untuk membuat database baru kita dapat menuliskan perintah create database nama_database; • misalkan kita akan membuat database untuk menyimpan data katalog buku suatu perpustakaan create database 5/22/2017 erna kumalasari nurnawati 7 perpustakaan; DDL.2: Menggunakan Database • Untuk memakai database yang telah kita buat, kita dapat menggunakan perintah use nama_database; • Misalnya: use perpustakaan; 5/22/2017 erna kumalasari nurnawati 8 DDL.3: Menghapus Database drop database nama_database • contoh: drop database perpustakaan; 5/22/2017 erna kumalasari nurnawati 9 DDL.4: Membuat tabel • Sintaks: • CREATE TABLE <nama_tabel> ( <nama_kolom> <tipe_data>(<panjang_data>) [UNIQUE] [NOT NUL] [PRIMARY KEY] [DEFAULT<nilai_default>] [referential_constraint_defenition>] [CHECK<constraint_defenition>], <nama_kolom> <tipe_data>(<panjang_data>) [UNIQUE] [NOT NULL] [PRIMARY KEY] [DEFAULT<nilai>] [referential_constraint_defenition>] [CHECK<constraint_defenition>], 5/22/2017 erna kumalasari nurnawati . . . ); 10 • Unique; Pada kolom tersebut tidak boleh ada data yang sama. • Not Null; data pada kolom tersebut tidak boleh bernilai null (kosong) • Unique dan Not Null; kolom tersebut dapat dijadikan primary key. • Default; nilai default yang secara otomatis akan mengisi kolom dengan data default tersebut setiap operasi insert dilakukan. • Referential_Constraint_Definition; Bila kolom tersebut merupakan foreign key terhadap tabel lain. Dengan sintaks: – FOREIGN 5/22/2017 KEYerna <nama_kolom> REFERENCES kumalasari nurnawati <nama_tabel> 11 Contoh: Database Perpustakaan Data Dictionary: • Tabel Data_Buku Nama Field id_buku judul pengarang penerbit Jumlah Tipe Data Ukuran Karakter Karakter Karakter Karakter 12 255 255 255 Integer - Ket Primary Key SQL Create Tabel Data_Buku 5/22/2017 erna kumalasari nurnawati 12 Contoh: Database Perpustakaan Data Dictionary: • Tabel Mahasiswa Nama Field NIM Nama Alamat Telepon Tipe Data Karakter Karakter Karakter Karakter Email Karakter Ukuran Ket 12 Primary Key 100 255 30 100 SQL Create Tabel Mahasiswa 5/22/2017 erna kumalasari nurnawati 13 Contoh: Database Perpustakaan Data Dictionary: • Tabel Detail_Pinjam Nama Field Tipe Data Ukuran Integer, Auto 11 id_buku NIM Tgl_Pinjam Karakter Karakter Tanggal 12 12 - Tgl_Kembali Tanggal - Id_auto Ket Composite PK, Auto Composite PK Composite PK SQL Create Tabel Detail_Pinjam 5/22/2017 erna kumalasari nurnawati 14 Contoh Create Table 1 create table data_buku ( id_buku char(12) primary key, judul char(255) not null, pengarang char(255) not null, penerbit char(255) not null, 5/22/2017 erna kumalasari nurnawati 15 Contoh Create Table 2 create table Mahasiswa ( NIM char(12) primary key, nama char(100) not null, alamat char(255) not null, telepon char (30), email char(100) ); 5/22/2017 erna kumalasari nurnawati 16 Contoh Create Table 3 create table detail_pinjam ( id_auto int auto_increment, NIM char(12) not null, id_buku char(12) not null, tanggal_pinjam date not null, tanggal_kembali date not null, 5/22/2017 erna kumalasari nurnawati 17 Ingat! • Skema data hanya menyatakan tipe data secara umum • Implementasi SQL pada DBMS harus memperhatikan tipe data yang ada pada DBMS tersebut – Misalnya: Tipe data Karakter, ada yang menggunakan Char, Varchar, String, dll 5/22/2017 erna kumalasari nurnawati 18 Tipe Data dalam MySQL 5/22/2017 erna kumalasari nurnawati 19 DDL.5: MELIHAT STRUKTUR TABLE • Untuk melihat struktur table yang telah kita buat, kita dapat menggunakan perintah : desc nama_table; • contoh : desc detail_pinjam; 5/22/2017 erna kumalasari nurnawati 20 5/22/2017 erna kumalasari nurnawati 21 DDL.6: Menghapus Table • perintah menghapus table drop table nama_table; • contoh : drop table detail_pinjam; 5/22/2017 erna kumalasari nurnawati 22 DDL.7: Modifikasi Tabel • ALTER TABLE <nama_tabel> [ ADD (<nama_kolom> <tipe_data>(<panjang_data>), . . . ); ] [ MODIFY (<nama_kolom><tipe_data>(<panjan g_data>), . . .); ] 5/22/2017 erna kumalasari nurnawati 23 • Keterangan Add; Penambahan kolom baru. Modify; Mengubah kolom yang sudah ada sebelumnya. • Contoh : ALTER TABLE Mahasiswa ADD (Jenis_Kelamin CHAR(10)); 5/22/2017 erna kumalasari nurnawati 24 DATA MANIPULATION LANGUAGE • • • DML digunakan untuk memanipulasi data yang terdapat pada database Perintah-perintah pada DML mencangkup: Manipulasi: • INSERT: mengisi (1 record) data ke tabel • DELETE: menghapus isi tabel • UPDATE: updating data • Query: 5/22/2017 erna kumalasari nurnawati 25 DML.1: INSERT • Insert digunakan untuk menambahkan atau memasukan data pada suatu table. • Penggunaan perintah insert adalah sebagai berikut: insert into nama_table values (isi_data); atau insert into nama_table 5/22/2017 (nama_field) erna kumalasarivalues nurnawati 26 • misalkan kita ingin menambahkan data pada table data_buku maka perintah insert digunakan sebagai berikut : • insert into data_buku values (‘A-01’,’PHPMySQL’,’Saya’,1); 5/22/2017 erna kumalasari nurnawati 27 5/22/2017 erna kumalasari nurnawati 28 DML.2 DELETE • Delete digunakan untuk menghapus data pada table, perintahnya dalah sebagai berikut: delete from nama_table; • Misalnya: delete from data_buku Where Id_buku=’A-01’ • jika kita menggunakan perintah tersebut, maka semua data pada table akan terhapus secara permanen. 5/22/2017 erna kumalasari nurnawati 29 DML.3: UPDATE • Untuk mengupdate data yang telah tersedia, kita dapat menggunakan perintah update dengan bentuk: update nama_table set nama_field = isi data baru [where=kondisi]; 5/22/2017 erna kumalasari nurnawati 30 • Misal kita ingin mengupdate data pada table data_buku dengan id_buku=’A-01’ maka perintahnya adalah sebagai berikut: update data_buku set judul =’MySQL’, pengarang=’kamu’, jumlah=1 where id_buku=’A01’; 5/22/2017 erna kumalasari nurnawati 31 5/22/2017 erna kumalasari nurnawati 32 DML.4 SELECT • Select digunakan untuk menampilkan data pada table dalam database kita. Penggunaan perintah select adalah sebagai berikut: select nama_field from nama_table; atau select * from nama_table; • penggunaan karakter * 5/22/2017 erna kumalasari nurnawati mereferensikan semua nama field 33 • Misalkan kita ingin menampilkan semua data pada field dalam table data_buku, maka perintahnya adalah: select * from data_buku; • Akan tetapi apabila kita ingin mendapatkan hanya data field judul pada table data_buku, maka perintah select yang akan digunakan adalah: select judul from data_buku; 5/22/2017 erna kumalasari nurnawati 34 5/22/2017 erna kumalasari nurnawati 35 Basic SELECT 5/22/2017 erna kumalasari nurnawati 36 WHERE • where digunakan untuk memberikan kondisi terhadap perintah SQL. • Penggunaan where dapat digunakan pada perintah select, delete, update. • Misalkan data pada table data_buku sbb: : 5/22/2017 erna kumalasari nurnawati 37 • Apabila kita ingin menampilkan hanya data id_buku = A-03 maka perintahnya : select * from data_buku where id_buku =’A-03’; 5/22/2017 erna kumalasari nurnawati 38 Summary Data Definition Language (DDL): • Create Database, Drop Database, Use Database • Create Table, Drop Table, Alter Table Data Manipulation Language (DML) • Query: SELECT • Manipulasi: INSERT, DELETE, 5/22/2017 UPDATE erna kumalasari nurnawati 39 End for Now Terima Kasih 5/22/2017 erna kumalasari nurnawati 40