DML (Data Manipulation Language)

Kamis, Oktober 01, 2015 kamusuka 0 Comments

Seperti yang telah di jelaskan sebelumnya DML merupakan kumpulan perintah SQL yang digunakan untuk proses pengolahan isi data di dalam table seperti :

- Insert (memasukkan)
- Select (mencari/mengambil)
- Update (merubah)
- Delete (menghapus)

isi data - dan tidak terkait dengan perubahan struktur dan definisi tipe data dari objek database.

Insert

Untuk meyisipkan atau memasukkan data baru ke dalam tabel. Penggunaannya setelah database dan tabel selesai dibuat. Perintah Insert digunakan untuk menambahkan baris baru dalam sebuah tabel setelah tabel tersebut di buat. Format penulisan perintah insert:
INSERT INTO nama_tabel [(field ke-1,…,field ke-n)]
VALUES (nilai_field_ke-1, …,nilai_field_ke-n) ;
Contoh:
INSERT INTO barang VALUES (brg001, ‘Pesil’, NULL, 300);
Atau:
INSERT INTO barang (kode_barang, nama_barang, satuan_barang, stok_barang) VALUES (‘brg001’, ‘Kertas’, ‘Rim’, 300) ;
Contoh query untuk menginput data pada tabel:
Pada tabel barang:
INSERT INTO barang VALUES ('brg001', 'Pensil', NULL, 300);
INSERT INTO barang VALUES ('brg002', 'Kertas', 'Rim', 50 );
INSERT INTO barang VALUES ('brg003', 'Penggaris', 'Unit', 75);
Pada tabel suplier:
INSERT INTO suplier VALUES ('sup001', 'Alfa', '012345', 'Jalan Mangga');
INSERT INTO suplier VALUES ('sup002', 'Betha', '234567', 'Jalan Jambu');
INSERT INTO suplier VALUES ('sup003', 'Charli', '098765', 'Jalan Mangga');
Pada tabel pasok:
INSERT INTO pasok VALUES ('pas001', 'brg001', 'sup002', '05-01-2015', 50);
INSERT INTO pasok VALUES ('pas002', 'brg003', 'sup002', '02-10-2015', 350);

Select

Untuk mengambil data atau menampilkan data dari satu tabel atau beberapa dalam relasi. Untuk menampilkan/menyeleksi data yang dinginkan dari sekumpulan data yang ada.
Format penulisan perintah select:
SELECT nama_field
FROM nama_tabel
WHERE [kondisi]
Contoh:
SELECT * FROM barang
Atau:
SELECT kode_barang,nama_barang FROM barang
Perintah select 1 Table:
Contoh Query untuk mencari nama barang yang jumlah stok nya kurang dari 100:
SELECT nama_barang FROM barang WHERE stok_barang < 100
Contoh Query untuk mencari nama suplier yang beralamat di jalan mangga:
SELECT nama_suplier FROM suplier WHERE alamat_suplier = 'jalan mangga'
Perintah Select Lebih dari 1 Table:
Perintah select dapat digunakan untuk menampilkan data yang ada didalam tabel yang berbeda. Yang harus anda ketahui terlebih dahulu adalah data tersebut ada di tabel mana dan melibatkan field apa, sehingga pengkodean dalam query dapat menjadi lebih mudah, contoh:

Tampilkan nama barang, dan nama penyuplai yang memasok barang lebih dari 100 ?
Jawab:
Lakukan analisa terhadap pertanyaan tersebut yaitu dengan :
1. Cari nama tabel apa saja yang terlibat untuk menampilkan data tersebut.
2. Cari nama field apa saja yang terlibat untuk menampilkan data tersebut.
3. Hubungkan penghubung antar table.
4. Sertakan kondisi yang diminta.
Tampilkan nama barang, dan nama penyuplai yang memasok barang lebih dari 100 ?
1. Nama Table yang terlibat : Table Barang, Table suplier, Table Pasok
2. Nama Field yang terlibat : barang.nama_barang, suplai.nama_penyuplai, pasok.jumlah_pasok
3. Penghubung antar table : barang.kode_barang = pasok.kode_barang, suplier.kode_suplier = pasok.kode_suplier
4. Kondisi yang diminta : pasok.jumlah_pasok > 100
Maka query yang dituliskan setelah analisa:
SELECT barang.nama_barang, suplai.nama_penyuplai
FROM barang, suplier, pasok
WHERE barang.kode_barang = pasok.kode_barang AND
suplier.kode_suplier = pasok.kode_suplier AND
pasok.jumlah_pasok >100
AND merupakan  operator logika sebagai penghubung antar kondisi, ada 3 jenis operator logikal, yaitu:
1. OR, operator ini menghasilkan nilai benar jika setidaknya terdapat 1 kondisi yang benar.
2. AND, operator ini menghasilkan nilai benar hanya jika seluruh kondisi bernilai benar,
3. NOT, operator ini membalikan hasil kondisi.

Update

Untuk memperbarui data lama menjadi data terkini. Perintah update digunakan untuk mengganti nilai dari kolom. Klausa Where digunakan jika data yang akan diganti (diupdate) hanya pada kolom tertentu saja. Tanpa klausa Where, semua baris akan berubah nilainya.
Format penulisan perintah update:
UPDATE nama_tabel
SET nama_field = data_baru
WHERE nama_field = data_lama;
Contoh : merubah stok barang dari tabel barang yang memiliki kode barang 'brg001'
UPDATE barang
SET stok_barang = 1000
WHERE kode_barang = 'brg001';

Delete

Untuk menghapus data dari tabel. Delete digunakan untuk menghapus semua baris sesuai dengan kondisi yang telah ditetapkan.
Format penulisan perintah delete:
DELETE FROM nama_tabel
[WHERE (condition) ];
Contoh : menghapus data dari tabel suplier dengan kode suplier "sup123"
DELETE FROM suplier
WHERE kode_suplier = 'sup001';

Sumber:
https://drive.google.com/folderview?id=0BzVXsnzLWLnEV0VmdHJncWNnZWc