2. Data Definition Language (DDL)
Digunakan untuk melakukan pembuatan struktur database, mulai dari mendefinisikan database, tabel-tabel
dan indeksnya, view dan perintah-perintah berkenaan dengan maintenance dari struktur database itu
sendiri.
1.Membuat Database
Syntax :
Create Database namadatabase;
Contoh :
Create Database Akademik;
2. Membuat Tabel
Syntax :
CREATE TABLE <nama_tabel> (
<nama_kolom> <tipe_data>(<panjang_data>)
[UNIQUE] [NOT NUL] [PRIMARY KEY] [DEFAULT<nilai_default>]
[referential_constraint_defenition>] [CHECK<constraint_defenotion>],
<nama_kolom> <tipe_data>(<panjang_data>)
[UNIQUE] [NOT NULL] [PRIMARY KEY] [DEFAULT<nilai>]
[referential_constraint_defenition>] [CHECK<constraint_defenition>],
. . .
);
keterangan
Unique; Pada kolom tersebut tidak boleh ada data yang sama.
Not Null; tidak boleh data pada kolom tersebut bernilai null
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 syntax : FOREIGN KEY <nama_kolom> REFERENCES <nama_tabel>07/02/13 http://sites.google.com/site/samsulsite 2
3. Contoh :
CREATE TABLE Pelajar (
No_Induk CHAR(8),
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
3. Menambah Field Baru Tabel
Alter namatabel
[ ADD (<nama_kolom> <tipe_data>(<panjang_data>), . . . ); ]
[ Add (<nama_kolom><tipe_data>(<panjang_data>), . . .); ]
Keterangan
Alter; konfirmasi nama tabel
Add; Menambah kolom yang sudah ada sebelumnya.
Contoh :
ALTER TABLE Pelajar
ADD column Jenis_Kelamin CHAR(10);
4.Mengubah Lebar Field
Alter namatabel
[ ADD (<nama_kolom> <tipe_data>(<panjang_data>), . . . ); ]
[ MODIFY (<nama_kolom><tipe_data>(<panjang_data>), . . .); ]
Keterangan
Alter; konfirmasi nama tabel
Modify; Mengubah kolom yang sudah ada sebelumnya.
Contoh :
ALTER TABLE Pelajar
Modify column Jenis_Kelamin CHAR(20); 3
4. 5. Menghapus Field
Syntax :
Alter namatabel
Drop nama Field/Column;
Keterangan
Alter; konfirmasi nama tabel
Drop; Menghapus nama field
Contoh :
Alter Table Pelajar
Drop Jenis_Kelamin;
6. Menghapus Tabel
Drop Table namatabel;
7. Menghapus Database
Drop Database namadatabase;
8. Membuat Index
Syntax : CREATE INDEX <nama_index> ON <namatabel>(<nama_kolom>);
Contoh : CREATE INDEX nm ON Pelajar(Nama);
9.Menghapus Index
Syntax : Drop Index namaindex
on namatable
Contoh : Drop Index nm On Pelajar;
07/02/13 http://sites.google.com/site/samsulsite 4
5. Data manipulation Language (DML)
Setelah struktur database dibuat dengan tabel-tabelnya maka berikutnya adalah pengisian, perbaikan,
penghapusan, pengambilan dan pencarian kembali data.
DML digunakan untuk memanipulasi data (tambah, ubah, hapus, cari)
1.Insert
Syntax:
INSERT INTO <nama_tabel> [(<nama_kolom1,nama_kolom2, . . . <nama_kolomN>)]
VALUES
(<nilai_kolom1>,<nilai_kolom2>, . . . <nilai_kolomN>);
Contoh :
INSERT INTO Pelajar
VALUES (‘00311217’,’Wempi Satria’,’1982-02-12’,’1’);
INSERT INTO Pelajar
VALUES (‘00311211’,’Wempi,’1982-03-03’,’1’);
INSERT INTO Pelajar
VALUES (‘00311210’,’Satria’,’1982-12-12’,’1’);
2. Update
Syntax
UPDATE <nama_tabel>
SET <nama_kolom1= ‘nilai_kolom1’>,
<nama_kolom2= ‘nilai_kolom2’>,
. . . ,
<nama_kolomN= ‘nilai_kolomN’>
[WHERE <kondisi>];
Contoh :
UPDATE Pelajar
SET No_Induk = ‘00311216’ ,Nama = ‘Wati’
WHERE No_Induk =’00311210’ and Nama = ‘Satria’;
5
6. 3. Menghapus data (Deletion)
Syntax
DELETE FROM <nama_tabel>
WHERE <kondisi>;
Contoh :
DELETE FROM Pelajar
WHERE No_Induk = ‘00311211’;
4. Seleksi data (Selection)
Syntax
SELECT [*] [<kolom1>, <kolom2>, . . ., <kolomN>]
[<alias.kolom1>, <alias.kolom2>, . . . , <alias.kolomN>]
FROM <nama_tabel>
WHERE <kondisi>
[AND <kondisi>]
[AND MONTH_BETWEEN (<kondisi>);
Contoh :
SELECT * FROM Pelajar;
5. Membuat tabel maya (Creating views)
Syntax
CREATE VIEW <nama_view>
AS SELECT <kolom1, kolom2, . . . , kolomN>
FROM <nama_tabel>
WHERE <kondisi>;
Contoh
Create View lihat
As select No_Induk, Nama
From Pelajar;
http://sites.google.com/site/samsulsite 6
7. 6. Menghapus tabel maya (Creating views)
Syntax
Drop <nama View>;
Contoh
Drop view lihat;
7.Kondisi
Syntax
Select * from namatabel where namafield like ‘datadicari%’; atau
Select * from namatabel where namafield = ‘datadicari’;
contoh
select * from pelajar
where Nama like ‘s%’;
07/02/13 http://sites.google.com/site/samsulsite 7
8. EKSPRESI
FROM
Untuk mendefenisikan tabel yang menjadi sumber data dari suatu perintah seleksi
Contoh : SELECT * FROM Pelajar
WHERE
Untuk mendefenisikan kondisi pengambilan data dari suatu perintah seleksi
Contoh : SELECT * FROM Pelajar
WHERE No_Induk = ‘00311217’;
GROUP BY
Untuk Mengelompokkan data berdasarkan ekspresi group
Syntax : SELECT <kolom1, kolom2, ... , kolomN>
FROM <nama_tabel>
WHERE <kondisi>
GROUP BY <group_kolom>;
Contoh : SELECT No_Induk, Nama
FROM Pelajar
GROUP BY No_Induk
07/02/13 http://sites.google.com/site/samsulsite 8
9. ORDER BY
Untuk mengurutkan data hasil seleksi
Syntax : SELECT <kolom1, kolom2, ... , kolomN>
FROM <nama_tabel>
WHERE <kondisi>
ORDER BY <nama_kolom> [DESC/ASC];
Contoh : SELECT * FROM Pelajar
ORDER BY No_Induk desc;
HAVING
Untuk mendefenisikan batasan seleksi berdasarkan GROUP BY
Syntax : SELECT <kolom1, kolom2, ... , kolomN>
FROM <nama_tabel>
WHERE <kondisi>
GROUP BY <group_kolom>
HAVING <batasan_group>;
Contoh :
SELECT No_Induk, Nama
FROM Pelajar
GROUP BY No_Induk
HAVING Nama=‘Wempi’:
07/02/13 http://sites.google.com/site/samsulsite 9
10. No Nama Alamat Kota Kode pos Email Hubungan Telp.
1 Bram Ciputat Tangerang 15412 Samsul_si@
yahoo.com
Orang Tua 98585244
2 Nuriyah Reni Jaya Depok 16010 Nuri@yahoo.com Wife 085552135
3 Susi similikiti Weleh Sawangan Depok 16010 susi@yahoo.com Teman 54564646
4 Onno Binjai Medan 20127 nono@googl
e.com
Musuh 65454646
5 Happy Salma
Ramadhan
Pasar
Minggu
Jaksel 15326 Cyanknya_C
amcul@yaho
o.com
Pacar 0812111100
6 Dian Sastro
Ramadhan
Lenteng
Agung
Jaksel 18524 Camcul_Pun
ya@yahoo.c
o.id
Sepia 081599999
7 Sarah Azhari Depok Depok 15776 Sarahku@c
bn.net
Office Girl 08882069
8 Rahma Azhari Kampung
Utan
Tangerang 15413 Rahma_ohh
@yahoo.com
Spirit Girl 0811513513
9 Dewi Persik Ciputat Tangerang 15415 Dewi_gerga
ji@google.c
om
XXXX 081255353
10 Roy Suryo Polah Jombang Tangerang 15167 Roy@google.
com
Intruder 64645453
LATIHAN
07/02/13 http://sites.google.com/site/samsulsite 10