Manipulasi
Data
Data Manipulation Language (DML)
adalah query language yang digunakan untuk memanipulasi data pada database.
Peintah-perintah yang terdapat pada data manipulation language sebagai berikut
:
·
SELECT : mengambil data dari satu tabel atau
lebih dalam database.
·
INSERT :
menambahkan data baru ke dalam tabel.
·
UPDATE :
mengubah data pada tabel dalam satu kolom dan baris atau lebih.
·
DELETE :
menghapus data pada tabel.
·
MERGE :
melakukan insert, update, atau menghapus pada tabel hasil join.
A. Select Data
Query SELECT digunakan untuk mengambil atau memperoleh data
dari tabel. Ada tiga hal yang perlu dipastikan untuk mengidentifikasi dalam
membentuk query SELECT yang tepat :
·
Untuk mengambil kolom
·
Untuk mengambil bentuk kolom
·
Untuk memenuhi data jika ada pengkondisian
a) Combining
Conditions
Penggabungan
beberapa kondisi dalam satu statement query.
Bentuk umum
:
SELECT [kolom-yang-ingin-ditampilkan] FROM
[nama_tabel] WHERE [condition];
Contoh : katakanlah
anda sekarang ingin mengetahui mahasiswa yang termasuk dalam
angkatan 2009
dengan fakultas manajemen informatika. Anda bisa medapatkan hasil yang
diinginkan ini menggunakan pernyataan SQL berikut :
SELECT id, nim, kota, fakultas
FROM tbl_mahasiswa
WHERE fakultas = ‘Manajemen Informatika’ AND angkatan
= 2009
b) Between
Clause
Digunakan untukmemilih beberapa data dalam menetapkan kisaran
pada range atau rentang tertentu.
Bentuk umum :
SELECT [kolom-yang-ingin-ditampilkan] FROM
[nama_tabel] WHERE [kolom] BETWEEN [condition];
Contoh :
SELECT id, nim, kota, fakultas, angkatan
FROM tbl_mahasiswa
WHERE angkatan BETWEEN ‘2008’ AND ‘2009’
c) Not Clause
Digunakan untuk menulis query yang tidak diinginkan
dalam output yang kita buat. Menggunakan keyword “NOT” , “<>” atau “!=”.
Bentuk umum :
SELECT [kolom-yang-ingin-ditampilkan]
FROM [nama_tabel]
WHERE NOT [condition];
Contoh : katakanlah anda ingin daftar kota dan
fakultas pada tabel mahasiswa yang bukan fakultas “Teknik Informatika”. Anda
bisa mendapatkan daftar ini dengan menggunakan query berikut :
SELECT id, nim, kota, fakultas
FROM tbl_mahasiswa
WHERE NOT fakultasi=’Teknik Informatika’;
d) Union Clause
Digunakan untuk menggabungkan hasil dari dua atau
lebihpernyataan SELECT menjadi satu.
Bentuk umum :
SELECT nama_kolom FROM
nama_tabel UNION SELECT nama_kolom FROM nama_tabel;
Contoh :
SELECT first_name, last_name
FROM employees
WHERE department =
’shipping’
UNION
SELECT first_name, last_name
FROM employees
WHERE hired BETWEEN
‘1-jan-1990’ AND ‘1-jan-2000’
e) Except dan Intersect Clauses
Except clause memberikan hasil set akhir dimana
menampilkan data pada tabel pertama yang tidak terdapat pada tabel kedua.
Bentuk umum :
SELECT nama_kolom FROM
nama_tabel EXCEPT SELECT nama_kolom FROM nama_tabel;
Contoh :
SELECT id,nim
FROM tbl_mahasiswa
EXCEPT
SELECT id,nim
FROM tbl_nim;
Intersect clause memberikan hasil set akhir dimana
hanya menampilkan data pada tabel pertama yang sama dengan data pada tabel
kedua.
Bentuk umum :
SELECT nama_kolom FROM
nama_tabel INTERSECT SELECT nama_kolom FROM nama_tabel;
Contoh :
SELECT id,nim
FROM tbl_mahasiswa
INTERSECT
SELECT id,nim
FROM tbl_nim;
f) Join Clause
Digunakan untuk menggabungkan data yang terkait dari
berbagai sumber tabel. Ada tiga jenis statement join yang harus diperhatikan,
yaitu :
1. Inner Join
Bentuk kondisi join dimana diantara 2 atau lebih
tabel yang ingin di join memiliki hubungan sehingga semua isi tabel yang di
pilih bisa ditampilkan.
Bentuk umum :
SELECT field
FROM tabel1
INNER JOIN tabel2
ON kondisi;
Contoh :
SELECT tbl_mahasiswa.id,
tbl_mahasiswa.nim, tbl_mahasiswa.kota, tbl_mahasiswa.fakultas,
tbl_mahasiswa.angkatan, tbl_nim.nama
FROM tbl_mahasiswa
INNER JOIN tbl_nim
ON tbl_mahasiswa.nim =
tbl_nim.nim;
2. Outer Join
Digunakan untuk menghasilkan sebuah data dari sebuah
tabel dan membatasi data dari tabel lainnya. Outer join dibagi menjadi 3 yaitu
:
·
Left Outer Join
Digunakan untuk menampilkan semua isi tabel sisi
kiri, walaupun data pada pasangan joinnya yang berada disisi kanan nilainya
tidak sama ataupun berisi null.
Bentuk umum :
SELECT field
FROM tabel1
LEFT OUTER JOIN tabel2
ON kondisi;
Contoh :
SELECT tbl_mahasiswa.id,
tbl_mahasiswa.nim, tbl_mahasiswa.kota, tbl_mahasiswa.fakultas,
tbl_mahasiswa.angkatan, tbl_nim.nama
FROM tbl_mahasiswa
LEFT OUTER JOIN tbl_nim
ON tbl_mahasiswa.nim =
tbl_nim.nim;
·
Right Outer Join
Digunakan untuk menampilkan semua isi tabel sisi
kanan, walaupun data pada pasangan joinnya yang berada disisi kiri nilainya
tidak sama ataupun berisi null.
Bentuk umum :
SELECT field
FROM tabel1
RIGHT OUTER JOIN tabel2
ON kondisi;
Contoh :
SELECT tbl_mahasiswa.id,
tbl_mahasiswa.nim, tbl_mahasiswa.kota, tbl_mahasiswa.fakultas,
tbl_mahasiswa.angkatan, tbl_nim.nama
FROM tbl_mahasiswa
RIGHT OUTER JOIN tbl_nim
ON tbl_mahasiswa.nim = tbl_nim.nim;
·
Full Outer Join
Digunakan untuk menampilkan semua data dari dua
tabel yang dihubungkan meskipun terdapat data yang tidak memiliki pasangan di
tabel lainnya.
Bentuk umum :
SELECT field
FROM tabel1
FULL OUTER JOIN tabel2
ON kondisi;
Contoh :
SELECT tbl_mahasiswa.id,
tbl_mahasiswa.nim, tbl_mahasiswa.kota, tbl_mahasiswa.fakultas,
tbl_mahasiswa.angkatan, tbl_nim.nama
FROM tbl_mahasiswa
FULL OUTER JOIN tbl_nim
ON tbl_mahasiswa.nim =
tbl_nim.nim;
3. Cross join
Digunakan untuk menghasilkan sebuah data dari
perkalian jumlah record dari kedua tabel.
Bentuk umum :
SELECT field
FROM tabel1
CROSS JOIN tabel2
ON kondisi;
Contoh :
SELECT nama, kota, fakultas,
angkatan
FROM tbl_mahasiswa
CROSS JOIN tbl_nim;
B. Insert Data
Pada bagian
ini mempelajari tentang bagaimana data dimasukkan ke dalam database menggunakan INSERT statement. Jika anda ingin memasukkan sejumlah kecil data dengan
menambahkan beberapa baris baru ke dalam database, misalnya, Anda dapat
mencapai ha ini dala dua cara yang berbeda, yaitu :
·
Metode pertama menggunakan antarmuka grafis juga
(SSMS).
·
Metode kedua menggunakan statement INSERT.
INSERT INTO [nama_tabel] ([kolom1], [kolom2] . . . . [kolomN]) VALUES (‘nilai1’, ‘nilai2’ . . . . ‘nilaiN’);
INSERT INTO HumanResources.Department ( Name, GroupName) VALUES (‘Supervisor’, ‘Executive General and Administration’);
C. Update Data
Memahami
bagaimana data diperbarui dalam database, bagaimana menulis update data ke database mengguakan pernyataan UPDATE. Fungsi statement UPDATE adalah untuk
mengubah data dalam tabel atau view.
Bentuk umum
:
UPDATE nama_tabel SET nama_kolom = data_baru WHERE
nama_kolom = data_lama;
Contoh :
UPDATE HumanResources.Department SET Name = ‘IT
Services’ WHERE Name = ‘Information Services’;
D. Deleting
Data
Digunakan
untuk menghapus data dari satu atau beberapa table. Untuk mengidentifikasi dan
menghapus baris individu dari database bisa menggunakan beberapa cara yaitu :
·
Menggunakan sintaks DELETE (menghapus satu atau lebih
baris dalam tabel atau view).
· Menggunakan sintaks TRUNCATE (menghapus data aktual
dari dalam tabel tetapi meninggalkan struktur tabel untuk penggunaan
selanjutnya).
·
Menggunakan sintaks DROP (menghapus keseluruhan
tabel).
Statement
DELETE digunakan untuk menghapus satu atau lebih baris dalam tabel atau view.
Misalnya : anda bisa menghapus department dari tabel human resources, karena
perusahaan tidak menggunakan department tersebut.
Bentuk umum
:
DELETE FROM [nama_tabel] WHERE [kondisi];
Contoh :
DELETE FROM HumanResources.Department WHERE DepartmentID
= 17;
Referential Integrity
Referential Integrity adalah sebuah cara untuk menjaga konsistensi data antara tabel yang
saling ber-Relasi. Referential Integrity ada beberapa macam antara lain adalah
:
·
Restrict adalah membatasi, maksudnya adalah data pada
tabel induk tidak bisa di delete atau di update bila data tersebut memiliki
relasi pada tabel lainnya.
·
Cascase adalah bertingkat, maksudnya adalah bila data
pada tabel_induk di delete atau di update maka secara otomatis data pada tabel
lain yang memiliki relasi akan di delete/di update.
Komentar
Posting Komentar