Bahasa Query Komersial
SOURCE: Bahasa Query Komersial.pdfStructure Query Language (SQL) dibuat oleh IBM pada tahun 1970 untuk digunakan untuk mengakses dan mengolah database.
JENIS SQL:
1. Interactive, langsung dapat dioperasikan
2. Embedded, disisipkan ke dalam sebuah program
PENGELOMPOKAN STATEMEN SQL
- Data Definition Language (DDL): Create Database, Create Table, Create Index (untuk membuat primary key), Create View (untuk mengambil sebagian kolom), Alter Table (untuk memodifikasi table), Drop Database, Drop Table, Drop Index, Drop View
- Data Manipulation Language (DML): Insert, Select, Update, Delete
- Data Access: Grant, Revoke
- Data Integrity: Recover Table
- Auxiliary: Unload, Load, Rename Column
KASUS DATA DEFINITION LANGUAGE (DDL)
1. Pembuatan Database
Sintaks : CREATE DATABASE (nama_db)
Contoh : Buat database dengan nama organisasi PT. ABC
Caranya : CREATE DATABASE PT_ABC
Sintaks : CREATE TABLE nama_table (nama_kolom1 jenis kolom1,nama_kolom2 jenis_kolom2)
Contoh : Buat table dengan struktur database MHS (NPM char(8), NAMA char(25), ALAMAT char(30))
Caranya : CREATE TABLE MHS (NPM char(8) notnull, NAMA char(25)notnull, ALAMAT char(30) notnull)
Keterangan: notnull artinya data tidak boleh kosong
4. Pembuatan ViewSintaks : CREATE UNIQUE INDEX nama_index ON nama_table (nama_kolom)
Contoh : Buat index mahasiswa berdasarkan NPM dengan nama MHSIN dimana NPM tidak boleh sama
Caranya : CREATE UNIQUE INDEX MHSIN ON MHS(NPM)
Sintaks : CREATE VIEW nama_view[(nama_kolom1,…)]
AS SELECT statement [WITH CHECK OPTION]
Contoh : Buat view dengan nama MHSVIEW yang berisi semua data mahasiwa
Caranya : CREATE VIEW MHSVIEW
AS SELECT * FROM MHS
Sintaks : DROP DATABASE nama_db;
DROP TABLE nama_table; Contoh: DROP TABLE MHS
DROP INDEX nama_index;
DROP VIEW nama_view:
Sintaks : ALTER TABLE nama_table
ADD (nama_kolom, jenis_kolom)
BEFORE (nama_kolom)
MODIFY (nama_kolom, jenis_kolom)
DROP (nama_kolom, jenis_kolom)
Contoh : - Tambahkan kolom JKEL dengan panjang 1 char pada table MHS
- Ubah panjang kolom MTKULIAH menjadi 30 char
- Hapus kolom JKEL dari data table MHS
Caranya : - ALTER TABLE MHS ADD (JKEL char(1));
- ALTER TABLE MKUL MODIFY (MTKULIAH char(30));
- ALTER TABLE MHS DROP (JKEL char(1));
KASUS DATA MANIPULATION LANGUAGE (DML)
1. INSERT
Sintaks : INSERT INTO nama_table[(nama_kolom1,…)]
Contoh : Masukkan data matakuliah berkas akses dengan kode KK222 & besarnya 2
Caranya : INSERT INTO MKUL VALUES (“KK222”,”Berkas Akses”,2);
2. UPDATE
3. DELETESintaks : UPDATE nama_table
SET nama_kolom = ekspresi
WHERE kondisi;
Contoh : Ubah alamat menjadi “Depok” untuk mahasiswa yang memiliki NPM “50096487”
Caranya : UPDATE MHS
SET ALAMAT=”Depok”
WHERE NPM=”50096487”
Sintaks : DELETE FROM nama_table4. SELECT
WHERE kondisi
Contoh : Hapus data nilai matakuliah “KK021” bagi mahasiswa yang mempunyai NPM “10296832”
Caranya : DELETE FROM NILAI
WHERE NPM=”10296832” AND KDMK=”KK021”
Menentukan informasi yang ingin dikeluarkan dari table-table untuk memberikan hasil table. Hasil yang dikeluarkan selalu berupa table relational.
Keterangan:
Select : memilih data yang akan ditampilkan berdasarkan atribut
Distinct : menghilangkan duplikasi
From : mendefinisikan seluruh table yang digunakan dalam query
Where : menentukan syarat data yang akan dipilih
Group by : mengelompokkan data yang mempunyai nila sama
Having : syarat data yang dikelompokkan digunakan bersama group by
Order by : mengurutkan data
Sintaks : SELECT [DISTINC] nama_kolom
FROM nama_table
[WHERE kondisi]
[GROUP BY nama_kolom]
[HAVING kondisi]
[ORDER BY nama_kolom [ASC/DESC]]
Contoh : tampilkan semua data mahasiswa
Caranya : SELECT NPM, NAMA, ALAMAT FROM MHS
atau bisa juga SELECT * FROM MHS
Contoh : Tampilkan Mata Kuliah yang SKSnya 2
Caranya : SELECT NAMA_MK FROM MATAKULIAH
WHERE SKS = 2
KASUS DATA ACCESS
1. GRANT
digunakan untuk memberikan hak akses, yang terdiri dari Insert, Update, Delete, Select.
Sintaks : GRANT hak_akses ON nama_db
[WITH GRANT OPTION]
[AS GRANTOR] atau
GRANT hak_akses ON nama_table
TO nama_pemakai
[WITH GRANT OPTION]
[AS GRANTOR]
Contoh : - Berikan hak akses kepada Adi untuk menampilkan nilai final tes
- Berikan hak akses atau baca dari table S pada user JIM
- Berikan hak baca dan ubah data untuk attribut status dan city pada user JIM dan Jack
Caranya : - GRANT SELECT (FINAL) ON NILAI TO ADI
- GRANT SELECT ON S TO JIM
- GRANT SELECT, Update(status,city) ON S TO JIM, JACK
digunakan untuk menarik hak akses pemakai.
Sintaks : REVOKE hak_akses ON nama_db
FROM nama_pemaikai; atau
REVOKE hak_akses ON nama_table
FROM nama_pemakai;
Contoh : - Tarik kembali dari Adi hak akses untuk menampilkan nilai final tes
- Menarik hak JIM untuk membaca pada table S
- Smith tidak boleh melakukan delete dan update untuk tabel P
- Joe tidak boleh melakukan apapun terhadap tabel S
Caranya : - REVOKE SELECT (FINAL) ON NILAI FROM ADI
- REVOKE SELECT ON S FROM JIM
- REVOKE DELETE, UPDATE ON P FROM SMITH
- REVOKE ALL ON S FROM JOE
KASUS DATA INTEGRITY
1. RECOVER TABE
Sintaks : RECOVER TABLE nama_table
Contoh : kembalikan keadaan data mahasiswa seperti pada saat sebelum terjadi kerusakan
Caranya : RECOVER TABLE MHS;
KASUS AUXILIARY
1. UNLOAD
Sintaks : UNLOAD TO “nama_path” DELIMETER “char_pemisah” SELECT statement;
Contoh : Ubah semua data mahasiswa ke bentuk ASCII dan disimpan ke file teks di directory /home/adi
Caranya : UNLOAD TO “/home/adi/teks” DELIMETER “|” SELECT FROM MHS;
Sintaks : LOAD FROM “nama_path” DELIMETER “char_pemisah”
INSERT INTO nama_table [nama_kolom];
Contoh : merubah file teks ke table MHS_2 di directory /home/adi
Caranya : LOAD FROM “/home/adi/teks” DELIMETER “|” INSERT INTO MHS_2;
Sintaks : RENAME_COLUMN nama_kolom_lama TO nama_kolom_baru
Contoh : Ganti nama kolom ALAMAT yang ada pada table MHS menjadi KOTA
Caranya : RENAME_COLUMN MHS ALAMAT TO KOTA
Sumber: Dimpo Sinaga, S.Kom
Materi Kuliah Sistem Basis Data
Selasa, 26 Mei 2009
Semester II STIKOM CKI Wijaya Kusuma
pasti tugas kuliah ya van?
BalasHapuslumayan ni wat lusa...
BalasHapus@agus : :) bukan,iseng2 aja...
BalasHapus