Data Definition Language (DDL) digunakan untuk membuat struktur database seperti database, tabel, indeks, dan view serta melakukan perubahan dan pemeliharaan struktur tersebut. Data Manipulation Language (DML) digunakan untuk memanipulasi data seperti menambahkan, mengubah, menghapus, dan mengambil data dari database.
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>06/29/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;
06/29/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%’;
06/29/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
06/29/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’:
06/29/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
06/29/13 http://sites.google.com/site/samsulsite 10