(422 10 111 )
2 DA 04
1. DML ( Data Manipulation Language)
DML atau Data Manipulation Language adalah data yang memungkinkan untuk memanipulasi data dalam basisdata, yang termasuk dalam bahasa manipulasi data adalah:
SELECT, UPDATE, DELETE, INSERT INTO untuk memanipulasi data dalam tabel.
Pernyataan SELECT
Pernyataan SELECT digunakan untuk memilih data dari tabel, hasilnya disimpan dalam tabel hasil yang disebut Result Set. Rumus Dasar Select :
SELECT A1, A2, A3 FROM r1, r2, r3
Dimana A = nama Atribut/ field/ kolom dan r = nama Table/ Relasi
Contoh Query Select
Diketahui sebuah table mahasiswa (berarti nama table-nya adalah mahasiswa) yang mempunyai 5 field atau kolom yaitu Nim, Nama, kelas, ip, dan rank. Sedangkan record/isi baris-nya ada 8:
Nim | Nama | kelas | ip | rank |
3303143 | Ali Wardhana | 2mi-10 | 76 | 53 |
3303186 | Ari Budiarti Bachterani | 2mi-9 | 71 | 89 |
3303165 | Citra Sutisna Putra | 2mi-10 | 69 | 100 |
3303060 | David Zakaria | 2mi-9 | 69 | 149 |
3303075 | Didit Rusandi | 2mi-10 | 85 | 16 |
3303166 | Dilla Astrika Aprilia | 2mi-9 | 81 | 31 |
3303090 | Dwi Rahayu | 2mi-10 | 79 | 39 |
3303079 | Eneng Aisyah | 2mi-9 | 63 | 133 |
Bila ingin menampilkan field nama dan kelas saja maka rumusnya adalah :
SELECT Nama, kelas FROM mahasiswa;
Hasil atau result-setnya adalah :
Nama | kelas |
Ali Wardhana | 2mi-10 |
Ari Budiarti Bachterani | 2mi-9 |
Citra Sutisna Putra | 2mi-10 |
David Zakaria | 2mi-9 |
Didit Rusandi | 2mi-10 |
Dilla Astrika Aprilia | 2mi-9 |
Dwi Rahayu | 2mi-10 |
Eneng Aisyah | 2mi-9 |
Untuk menampilkan semua field rumusnya ada 2 yaitu :
- SELECT nim, nama, kelas, ip, rank FROM mahasiswa;
- SELECT * FROM mahasiswa
tanda bintang (*) mewakili bila ingin menampilkan semua record, silahkan pilih yang lebih enak yang mana.
DISTINCT
Disebuah table, kadang ada isi record yang sama contohnya adalah kolom kelas hanya mempunyai 2 jenis record yang sama, bilamana ingin hanya menampilkan data yang berbeda saja seperti ini sintaknya :
SELECT DISTINCT KELAS FROM Mahasiswa;
hasilnya
kelas |
2mi-10 |
2mi-9 |
WHERE
Digunakan untuk menentukan kriteria seleksi. Untuk memilih data suatu tabel dengan kreteria tertentu misal kita ingin menampilkan nama mahasiswa yang ada di kelas 2mi-10 saja, Klausa Where dapat ditambahkan pada pernyataan SELECT. Sintaknya
SELECT nama, kelas FROM mahasiswa WHERE kelas='2mi-10'; tanda (') menandakan bahwa record bertipe String.
hasilnya :
Nama | kelas |
Ali Wardhana | 2mi-10 |
Citra Sutisna Putra | 2mi-10 |
Didit Rusandi | 2mi-10 |
Dwi Rahayu | 2mi-10 |
Berikut adalah Operator yang bisa digunakan :
Operator | Description |
= | Sama Dengan |
<> | Tidak Sama Dengan |
> | Lebih Besar dari |
< | Lebih Kecil dari |
>= | Lebih Besar dari atau Sama dengan |
<= | Lebih Kecil dari atau Sama dengan |
BETWEEN AND | Antara |
LIKE | Mencari data yang memungkinkan |
IN | Digunakan bila mengetahui nilai pasti dari sebuah kolom |
Contoh Penggunaan Operator LIKE :
SELECT * FROM mahasiswa WHERE nama LIKE 'A%';
hasilnya :
Nim | Nama | kelas | ip | rank |
3303143 | Ali Wardhana | 2mi-10 | 76 | 53 |
3303186 | Ari Budiarti Bachterani | 2mi-9 | 71 | 89 |
A% artinya mencari nama yang mempunyai huruf awal A. Misal menggunakan %A% berati mencari nama yang mampunyai huruf A. Kalau %
Contoh Penggunaan BETWEEN .. AND ..
Operator BETWEEN ... AND ... memilih data antara dua nilai dapat berupa angka, teks atau tanggal. Dengan sintaks BETWEEN nilai1 AND nilai2
SELECT * FROM mahasiswa WHERE ip BETWEEN 70 AND 80; perhatikan 70 dan 80 tidak menggukanan tanda (') karena merupakan sebuah angka
Nim | Nama | kelas | ip | rank |
3303143 | Ali Wardhana | 2mi-10 | 76 | 53 |
3303090 | Dwi Rahayu | 2mi-10 | 79 | 39 |
3303186 | Ari Budiarti Bachterani | 2mi-9 | 71 | 89 |
ORDER BY
Klausa ORDER BY digunakan untuk mengurutkan data. Misal kita ingin mengurutkan dari field nama.
SELECT * FROM mahasiswa ORDER BY nama;
Hasilnya:
Nim | Nama | kelas | ip | rank |
3303143 | Ali Wardhana | 2mi-10 | 76 | 53 |
3303186 | Ari Budiarti Bachterani | 2mi-9 | 71 | 89 |
3303165 | Citra Sutisna Putra | 2mi-10 | 69 | 100 |
3303060 | David Zakaria | 2mi-9 | 69 | 149 |
3303075 | Didit Rusandi | 2mi-10 | 85 | 16 |
3303166 | Dilla Astrika Aprilia | 2mi-9 | 81 | 31 |
3303090 | Dwi Rahayu | 2mi-10 | 79 | 39 |
3303079 | Eneng Aisyah | 2mi-9 | 63 | 133 |
MENGGUNAKAN ALIAS
Dengan SQL, ALIAS dapat digunakan untuk mengganti nama_kolom. contoh
SELECT nama AS nama_mhs FROM mahasiswa;
nama_mhs |
Ali Wardhana |
Ari Budiarti Bachterani |
Citra Sutisna Putra |
David Zakaria |
Didit Rusandi |
Dilla Astrika Aprilia |
Dwi Rahayu |
Eneng Aisyah |
Pernyataan UPDATE
Pernyataan UPDATE digunakan untuk memodifikasi data dalam tabel. Contoh
UPDATE mahasiswa SET nama = 'Dwi Lestari' WHERE nama = 'Dwi Rahayu';
Artinya Ubah table mahasiswa Diset nama menjadi Dwi Lestari yang tadinya nama adalah Dwi Rahayu.
Pernyataan DELETE
Pernyataan DELETE digunakan untuk menghapus baris data dalam tabel. contoh Jika kita ingin menghapus mahasiswa dengan nama David Zakaria, pernyataan SQL-nya adalah
DELETE FROM mahasiswa WHERE nama='David Zakaria';
Jika kita ingin menghapus semua data tanpa menghapus tabel, pernyataan SQL-nya adalah
DELETE FROM mahasiswa
2. DDL (Data Definition Language )
DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, DDL yang digunakan adalah CREATE untuk membuat objek baru, USE untuk menggunakan objek, ALTER untuk mengubah objek yang sudah ada, dan DROP untuk menghapus objek. DDL biasanya digunakan oleh administrator basis data dalam pembuatan sebuah aplikasi basis data.
CREATE
CREATE digunakan untuk membuat basis data maupun objek-objek basis data. SQL yang umum digunakan adalah:
CREATE DATABASE nama_basis_data
CREATE DATABASE membuat sebuah basis data baru.
CREATE TABLE nama_tabel
CREATE TABLE membuat tabel baru pada basis data yang sedang aktif. Secara umum, perintah ini memiliki bentuk
CREATE TABLE [nama_tabel]
(nama_field1 tipe_data [constraints][,
nama_field2 tipe_data,...])
atau
CREATE TABLE [nama_tabel]
(nama_field1 tipe_data [,
nama_field2 tipe_data,...]
[CONSTRAINT nama_field constraints])
dengan:
nama_field adalah nama kolom (field) yang akan dibuat. Beberapa sistem manajemen basis data mengizinkan penggunaan spasi dan karakter nonhuruf pada nama kolom.
tipe_data tergantung implementasi sistem manajemen basis data. Misalnya, pada MySQL, tipe data dapat berupa VARCHAR, TEXT, BLOB, ENUM, dan sebagainya.
constraints adalah batasan-batasan yang diberikan untuk tiap kolom. Ini juga tergantung implementasi sistem manajemen basis data, misalnya NOT NULL, UNIQUE, dan sebagainya. Ini dapat digunakan untuk mendefinisikan kunci primer (primary key) dan kunci asing (foreign key).
Satu tabel boleh tidak memiliki kunci primer sama sekali, namun sangat disarankan mendefinisikan paling tidak satu kolom sebagai kunci primer.
Contoh:
CREATE TABLE user
(username VARCHAR(30) CONSTRAINT PRIMARY KEY,
passwd VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME);
akan membuat tabel user seperti berikut:
username | passwd | tanggal_lahir |