STRUKTUR
QUERY LANGUAGE (SQL)
Dibuat
oleh IBM tahun 1970 untuk digunakan dalam hubungannya dengan database.
JENIS SQL
:
- Interactive, langsung dapat dioperasikan
- Embedded, disisipkan ke dalam sebuah program
PENGELOMPOKAN
STATEMEN SQL
1. Data
Definition Language (DDL)
CREATE DATABASE DROP DATABASE
CREATE TABEL DROP
TABEL
CREATE INDEX DROP
INDEX
CREATE VIEW DROP VIEW
ALTER
TABLE
2. Data
Manipulation Language
INSERT,
SELECT, UPDATE, DELETE
3. Data Access
GRANT , REVOKE
4.
Data Integrity
RECOVER TABLE
5.
Auxiliary
UNLOAD, LOAD,
RENAME COLUMN
KASUS
DATA DEFINITION LANGUAGE (DDL)
•
PEMBUATAN DATABASE/TABLE,INDEX DAN VIEW
1. Pembuatan Database
Nama
Database adalah berasal dari nama
organisasi
atau perusahaan
Sintaks
:
CREATE DATABASE (nama_db)
Contoh :
Buat database dengan nama organisasi PT.ABC CREATEDATABASE PT. ABC
2. Pembuatan Tabel
Sintaks :
CREATE
TABLE nama_table (nama_kolom1 jenis_kolom1,nama_kolom2,jenis_kolom2,….)
Contoh :
Struktur
databse sebagai berikut :
MHS (NPM
char(8), NAMA char(25), ALAMAT char(30))
CREATE
TABLE MHS (NPM char(8) not null, NAMA
char(25) notnull, ALAMAT char(30)
notnull)
3. Pembuatan Index
Sintaks :
CREATE
[UNIQUE] INDEX nama_index
ON
nama_table (nama_kolom) ;
Contoh :
Buat
index data mahasiswa berdasarkan NPM dengan nama MHSIN Dimana NPM tidak boleh
sama CREATE UNIQUE INDEX MHSIN ON
MHS(NPM)
4. Pembuatan View
Sintaks :
CREATE
VIEW nama_view[(nama_kolom1,….)]
AS SELECT
statement
[WITH
CHECK OPTION] ;
Contoh :
Buat view
dengan nama MHSVIEW yang berisi semua
data mahasiswa
CREATE
VIEW MHSVIEW
AS SELECT
* FROM MHS
•
MENGHAPUS DATABASE, TABLE, INDEX DAN VIEW
Sintaks : DROP DATABASE nama_db ;
DROP TABLE
nama_table ;
DROP INDEX nama_index ;
DROP VIEW
nama_view ;
Contoh : Hapus table mhs
DROP TABLE MHS
•
MERUBAH STRUKTUR TABEL
Sintaks : ALTER TABLE nama_table
ADD
(nama_kolom, jenis_kolom
[BEFORE
nama_kolom])
MODIFY
(nama_kolom, jenis kolom)
DROP (nama_kolom
jenis kolom)
Contoh :
1. Tambahkan kolom JKEL dengan panjang 1 char pada table MHS
ALTER TABLE MHS ADD
(JKEL char(1));
2. Ubah panjang kolom MTKULIAH menjadi 30 char
ALTER TABLE MKUL MODIFY (MTKULIAH char(30)); 3. Hapus
kolom JKEL dari data table MHS
ALTER
TABEL MHS DROP (JKEL char(1));
DATA
MANIPULATION LANGUAGE (DML)
1. INSERT
Sintaks
: INSERT INTO
Nama_table
[(nama_kolom1,…)]
Contoh :
Masukan
data matakuliah berkas akses dengan kode KK222
dan besarnya 2
INSERT
INTO MKUL VALUES(“KK222”,”Berkas Akses”, 2);
2. UPDATE
Sintaks :
UPDATE nama_table
SET nama_kolom = ekspresi
WHERE
kondisi ;
Contoh :
Ubah alamat menjadi “Depok” untuk
mahasiswa
yang memiliki NPM “50096487”
UPDATE MHS
SET ALAMAT=”Depok”
WHERE NPM=”50096487”;
3. DELETE
Sintaks : DELETE FROM nama_table
WHERE
kondisi
Contoh :
Hapus data nilai matakuliah “KK021” bagi
mahasiswa yang mempunyai NPM “ 10296832”
DELETE FROM NILAI WHERE
NPM=”10296832”
AND KDMK=”KK021”
Tabel dibawah ini untuk mengerjakan Select
(tampilan)
dari SQL
Tabel Nilai
NIM
|
NO. MK
|
MID
|
FINAL
|
10296832
10296126
31296500
41296525
21196353
50095487
1029632
|
KK021
KD132
KK021
KU122
KU122
KD132
KD132
|
60
70
55
90
75
80
40
|
75
90
40
80
75
0
30
|
4. SELECT
Sintaks : SELECT [DISTINCT] nama_kolom
FROM
nama_table
[
WHERE kondisi ]
[
GROUP BY nama_kolom ]
[HAVING
kondisi ]
[
ORDER BY nama_kolom
[ASC/DESC]]
Contoh
: Tampilkan semua data mahasiswa
SELECT
NPM, NAMA, ALAMAT
FROM
MHS
Atau
SELECT * FROM MHS
Maka
hasilnya adalah :
NIM
|
NAMA MHS
|
ALAMAT MHS
|
10296832
10296126
31296500
41296525
|
Nurhayati
Astuti
Budi
Prananingrum
|
Jakarta
Jakarta
Depok
Bogor
|
2. Tampilkan Mata Kuliah yang SKSnya 2 maka
penulisannya :
Select
namaMK from matakuliah
Where
sks = 2
Maka Hasilnya :
NAMAMK
|
Sistem Basis Data
Pancasila
|
3. Tampilkan semua data nilai dimana nilai
MID lebih besar sama dengan 60 atau nilai finalnya lebih besar 75.
maka penulisannya :
SELECT *FROM NILAI
WHERE
MID >= 60 OR FINAL > 75
Hasilnya
:
NIM
|
NO. MK
|
MID
|
FINAL
|
10296832
10296126
41296525
21196353
|
KK021
KD132
KU122
KU122
|
60
70
90
75
|
75
90
80
75
|
DATA ACCESS
1. GRANT
Sintaks
: GRANT hak_akses ON nama_db
[WITH GRANT OPTION]
[AS
GRANTOR] ;
GRANT
hak_akses ON nama_tabel
TO nama_pemakai
[WITH GRANT OPTION]
[AS
GRANTOR]
Contoh :
Berikan hak akses kepada Adi untuk
menampikan
nilai final test
GRANT SELECT (FINAL) ON NILAI TO ADI
2. REVOKE
Sintaks : REVOKE hak_akses ON nama_db
FROM
nama_pemakai ;
REVOKE hak_akses ON nama_tabel
FROM
nama_pemakai ;
Contoh :
Tarik kembali dari Adi hak akses
untuk menampilkan nilai final test
REVOKE
SELECT (FINAL) ON NILAI FROM ADI
DATA INTEGRITY
•
RECOVER
TABLE
Sintaks :
RECOVER TABLE nama_tabel
Contoh
:
kembalikan keadaan data
mahasiswa seperti pada saat sebelum
terjadi kerusakan
RECOVER
TABLE MHS ;
AUXILIARY
•
UNLOAD
Sintaks :
UNLOAD
TO “ nama_path”
[DELIMITER
“ Char_pemisah”]
SELECT statement ;
Contoh
:
Ubah semua data mahasiswa ke bentuk ASCII
dan disimpan ke file teks di directory/home/adi
UNLOAD
TO “/home/adi/teks”
DELIMITER
“ ½” SELECT * FROM MHS ;
•
LOAD
Sintaks :
LOAD FROM “ nama_path”
DELIMITER
“char_pemisah”
INSERT
INTO nama_tabel [ nama_kolom] ;
Contoh :
Merubah file teks ke tabel MHS_2 di directory
/home/adi :
LOAD
FROM “/home/adi/teks”
DELIMITER
“ ½” INSERT INTO MHS_2 ;
•
RENAME
Sintaks :
RENAME COLUMN
nama_kolom_lama
TO nama_kolom_baru
Contoh :
Ganti nama kolom ALAMAT yang ada pada tabel MHS
menjadi KOTA
RENAME
COLUMN MHS ALAMAT TO KOTA
0 komentar:
Posting Komentar