SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Downloaden Sie, um offline zu lesen
Praktikum Sistem Basis Data
(Database Server MySQL)
1 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Data Manipulation Language
(DML)
Praktikum Sistem Basis Data
(Database Server MySQL)
2 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
DML
Perintah SQL yang termasuk dalam DML adalah :
• INSERT
• SELECT
• UPDATE
• REPLACE
• DELETE
• TRUNCATE
Praktikum Sistem Basis Data
(Database Server MySQL)
3 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
• INSERT digunakan untuk menambahkan data ke suatu tabel.
• Bentuk umum pemanggilan insert adalah :
• Keterangan :
– INTO sifatnya opsional. Boleh ditulis, boleh tidak.
– Daftar nama kolom boleh ditulis, boleh tidak. Jika tidak ditulis, maka
dianggap sesuai urutan nama kolom dalam pendefinisian tabel (lihat
dengan perintah DESC namatabel. Gunakan koma sebagai pemisah.
– {VALUE | VALUES}, wajib ditulis. Boleh VALUE atau VALUES.
– Isi kolom harus sesuai dengan urutan daftar nama kolom. Boleh diisi
ekspresi atau DEFAULT. Gunakan koma sebagai pemisah.
INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])]
{VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
Praktikum Sistem Basis Data
(Database Server MySQL)
4 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
• Contoh :
create table member(
no int primary key auto_increment,
nama varchar(50) not null,
tgllhr date,
berat decimal(6,2),
status enum('A','T') default 'A'
);
Praktikum Sistem Basis Data
(Database Server MySQL)
5 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh :
• Keterangan :
– Menggunakan INTO
– Daftar isi kolom tidak disebutkan, sehingga semua kolom harus
disebut.
– Menggunakan VALUE.
– Kolom yang AUTO_INCREMENT diisi dengan nilai NULL.
– Pengisian data untuk setiap kolom ditulis sesuai urutan kolom dalam
pendefinisian tabel.
insert into member value(null,'Adi','1980-06-10',65.5,'A');
Praktikum Sistem Basis Data
(Database Server MySQL)
6 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh :
• Keterangan :
– Tidak menggunakan INTO
– Daftar isi kolom tidak disebutkan, sehingga semua kolom harus
disebut.
– Menggunakan VALUES.
– Kolom yang AUTO_INCREMENT diisi dengan nilai NULL.
– Pengisian data untuk setiap kolom ditulis sesuai urutan kolom dalam
pendefinisian tabel.
insert member values(null,'Budi','1985-12-10',50,'T');
Praktikum Sistem Basis Data
(Database Server MySQL)
7 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh :
• Keterangan :
– Daftar isi kolom disebutkan (nama, status), sehingga hanya kolom
tertentu yang akan disebut isinya.
– Kolom status diisi dengan DEFAULT. Ini menyatakan bahwa kolom
tersebut akan diisi dengan nilai DEFAULT kolom. Dalam hal ini kolom
status akan berisi „A‟.
insert into member(nama,status) values('Eni',DEFAULT);
Praktikum Sistem Basis Data
(Database Server MySQL)
8 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh :
• Keterangan :
– Pengisian data dengan nama Febri.
– Untuk melihat nilai hasil AUTO_INCREMENT, gunakan function
LAST_INSERT_ID().
insert into member values(null,'Febri','1990-10-
12',60,'T');
select last_insert_id();
Praktikum Sistem Basis Data
(Database Server MySQL)
9 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh :
• Keterangan :
– Pengisian data untuk kolom menggunakan function now() yang
berguna untuk mengisi data tanggal sekarang di komputer.
insert into member (nama,tgllhr) values('Gungun',now());
Praktikum Sistem Basis Data
(Database Server MySQL)
10 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh :
• Keterangan :
– Pada insert yang pertama, nilai auto_increment diisi secara manual
dengan nilai 10.
– Insert ke-dua akan menghasilkan nilai auto_increment 11 karena nilai
auto_increment sebelumnya telah diisi dengan nilai 10.
insert into member (no,nama) values(10,'Hendri');
insert into member (no,nama) values(null,'Ina');
Praktikum Sistem Basis Data
(Database Server MySQL)
11 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh salah:
• Keterangan :
– Akan menghasilkan error “ERROR 1062 (23000): Duplicate entry
'10' for key 'PRIMARY'”, karena nomor dengan nilai 10 sudah ada di
tabel.
insert into member (no,nama) values(10,'Hendra');
Praktikum Sistem Basis Data
(Database Server MySQL)
12 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh salah:
• Keterangan :
– Akan menghasilkan error “ERROR 1136 (21S01): Column count
doesn't match value count at row 1”, karena banyaknya kolom di
daftar isian kolom (4 kolom) tidak sesuai dengan banyaknya kolom
dalam pendefinisian kolom (5 kolom).
insert into member values(null,'Rendi','19900601',67);
Praktikum Sistem Basis Data
(Database Server MySQL)
13 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh salah:
• Keterangan :
– Akan menghasilkan error “ERROR 1136 (21S01): Column count
doesn't match value count at row 1”, karena banyaknya kolom di
daftar isian kolom (3 kolom) tidak sesuai dengan banyaknya kolom
yang akan diisi (2 kolom).
insert into member(nama,tgllhr)
values('Jefry','19900601',67);
Praktikum Sistem Basis Data
(Database Server MySQL)
14 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh salah:
• Keterangan :
– Akan menghasilkan error “ERROR 1366 (HY000): Incorrect decimal
value: 'a67' for column 'berat' at row 1”, karena adanya kesalahan
dalam pengisian data. Seharusnya diisi dengan angka.
insert into member(nama,berat) values('Jefry', 'a67');
Praktikum Sistem Basis Data
(Database Server MySQL)
15 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh salah:
• Keterangan :
– Akan menghasilkan error “ERROR 1264 (22003): Out of range
value for column 'berat' at row 1”, karena adanya kesalahan dalam
pengisian data. Karena menggunakan decimal(6,2) maka isi kolom
berat tidak boleh lebih dari 9999.99.
insert into member(nama,berat) values('Jefry', 10000);
Praktikum Sistem Basis Data
(Database Server MySQL)
16 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT
Contoh salah:
• Keterangan :
– Akan menghasilkan error “ERROR 1364 (HY000): Field 'nama'
doesn't have a default value”, karena adanya kesalahan yang
diakibatkan oleh karena kolom nama tidak diisi dan tidak mempunyai
nilai value. Hal ini menjadi error karena nama didefinisikan sebagai
NOT NULL,
insert into member(tgllhr,berat) values(1995,55);
Praktikum Sistem Basis Data
(Database Server MySQL)
17 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT … SELECT
• INSERT … SELECT digunakan untuk melakukan pengisian
data yang datanya diambil dari tabel lain.
• Bentuk umum pemanggilan insert adalah :
• Keterangan :
– Daftar kolom INSERT harus sesuai dengan daftar_kolom dalam
SELECT.
– Tidak ada VALUE/VALUES. Bagian VALUE/VALUES diganti dengan
SELECT.
INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])]
SELECT {*|daftar_kolom} FROM nama_tabel_sumber;
Praktikum Sistem Basis Data
(Database Server MySQL)
18 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT … SELECT
Contoh salah:
• Keterangan :
– SQL pertama akan membuat tabel negara.
– SQL kedua akan melakukan insert ke tabel negara dengan isi diambil
dari SQL select dari tabel country yang ada di skema world.
create table negara(
kode varchar(3) primary key,
nama varchar(52)
);
insert into negara select code,name from world.country;
Praktikum Sistem Basis Data
(Database Server MySQL)
19 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT DELAYED
• INSERT DELAYED digunakan untuk melakukan pengisian data
dimana server akan menempatkan baris yang akan diinsertkan ke
buffer. Proses insert akan dilakukan ketika tabel sedang tidak
digunakan oleh proses lain. Dengan cara ini, penyisipan akan
dilakukan tanpa harus menunggu status insertnya selesai.
• Keterangan :
– DELAYED ditempatkan setelah perintah INSERT.
– Hanya berlaku untuk tabel berengine MyISAM, MEMORY, ARCHIVE.
INSERT DELAYED
[INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])]
{VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
Praktikum Sistem Basis Data
(Database Server MySQL)
20 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT DELAYED
Contoh:
• Keterangan :
– SQL pertama akan membuat tabel negara.
– SQL kedua akan melakukan insert ke tabel negara dengan isi diambil
dari SQL select dari tabel country yang ada di skema world.
create table demodelayed(angka int) Engine=MyISAM;
insert delayed into demodelayed values(10);
Praktikum Sistem Basis Data
(Database Server MySQL)
21 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT … ON DUPLICATE KEY UPDATE
• Perintah INSERT … ON DUPLICATE KEY UPDATE
digunakan untuk menyisipkan data (INSERT). Jika data
yang dimasukkan ternyata mengakibatkan DUPLICATE
KEY, maka operasi yang akan dilakukan bukanlah INSERT
tapi UPDATE.
• Perintah ini akan menghidari terjadinya error DUPLICATE
KEY ketika ada pengisian data baru.
INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])]
{VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
ON DUPLICATE KEY UPDATE
kolom_update1=isi1[,kolom_update2=isi2];
Praktikum Sistem Basis Data
(Database Server MySQL)
22 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
INSERT … ON DUPLICATE KEY UPDATE
Contoh:
• Keterangan :
– Pada SQL ke-4, akan terjadi error jika menginsert data dengan angka 1 (karena
sudah ada).
– SQL-5 tidak akan menghasilkan error, karena menggunakan ON DUPLICATE
KEY UPDATE. Ketika terjadi DUPLICATE UPDATE, maka akan mengupdate
kolom angka2 dengan nilai baru (values) yang diinsertkan. Value digunakan
untuk mengambil nilai dari baris yang diinsertkan.
create table demodupkey(angka int primary key, angka2 int);
insert into demodupkey values(1,2);
insert into demodupkey values (2,100);
insert into demodupkey values (1,5); -- Akan ERROR
insert into demodupkey values (1,5)
on duplicate key update angka2=values(angka2);
Praktikum Sistem Basis Data
(Database Server MySQL)
23 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
MULTIROW INSERT
• Multirow insert digunakan untuk melakukan penambahan
lebih dari 1 baris baru dalam sekali INSERT.
• Bentuk umum pemanggilan multirow insert adalah :
• Keterangan :
– Pada bagian setelah VALUES, daftar isi kolom bisa dilakukan lebih
dari 1 kali.
INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])]
{VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
[, (isi_kolom1[, isi_kolom2, ...])]
Praktikum Sistem Basis Data
(Database Server MySQL)
24 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
MULTIROW INSERT
Contoh:
• Keterangan :
– SQL insert akan melakukan pengisian data sebanyak 4 baris dalam
satu kali eksekusi query INSERT.
– Setiap daftar isi kolom dipisahkan dengan koma (,).
create table demomultirow(angka int);
insert into demomultirow values(5),(7),(4),(3);
Praktikum Sistem Basis Data
(Database Server MySQL)
25 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
SELECT
• SELECT digunakan untuk mengambil data dari database.
• Bentuk umum pemanggilan SELECT adalah :
• Keterangan :
– * digunakan untuk menampilkan semua kolom yang ada dalam tabel
– Daftar_kolom digunakan untuk mengampikan kolom tertentu saja
– WHERE digunakan jika ingin membatasi data yang ditampilkan
• Perintah SELECT lebih lanjut akan diterangkan pada bab-bab
berikutnya.
SELECT {*|daftar_kolom} FROM nama_tabel
[WHERE kondisi_where]
Praktikum Sistem Basis Data
(Database Server MySQL)
26 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
SELECT
Contoh:
Menghasilkan :
– SQL insert akan melakukan pengisian data sebanyak 4 baris dalam
satu kali eksekusi query INSERT.
– Setiap daftar isi kolom dipisahkan dengan koma (,).
Select * from member;
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 1 | Adi | 1980-06-10 | 65.50 | A |
| 2 | Budi | 1985-12-10 | 50.00 | T |
| 3 | Catur | NULL | NULL | A |
| 4 | Eni | NULL | NULL | A |
| 5 | Febri | 1990-10-12 | 60.00 | T |
| 6 | Gungun | 2010-10-25 | NULL | A |
| 10 | Hendri | NULL | NULL | A |
| 11 | Ina | NULL | NULL | A |
+----+--------+------------+-------+--------+
8 rows in set (0.00 sec)
Praktikum Sistem Basis Data
(Database Server MySQL)
27 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
SELECT
Contoh:
Menghasilkan :
– SQL insert akan melakukan pengisian data sebanyak 4 baris dalam
satu kali eksekusi query INSERT.
– Setiap daftar isi kolom dipisahkan dengan koma (,).
select no,nama,tgllhr from member;
+----+--------+------------+
| no | nama | tgllhr |
+----+--------+------------+
| 1 | Adi | 1980-06-10 |
| 2 | Budi | 1985-12-10 |
| 3 | Catur | NULL |
| 4 | Eni | NULL |
| 5 | Febri | 1990-10-12 |
| 6 | Gungun | 2010-10-25 |
| 10 | Hendri | NULL |
| 11 | Ina | NULL |
+----+--------+------------+
8 rows in set (0.00 sec)
Praktikum Sistem Basis Data
(Database Server MySQL)
28 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
SELECT
Contoh:
Menghasilkan :
– SQL insert akan melakukan pengisian data sebanyak 4 baris dalam
satu kali eksekusi query INSERT.
– Setiap daftar isi kolom dipisahkan dengan koma (,).
select no,nama,tgllhr from member where no>5;
+----+--------+------------+
| no | nama | tgllhr |
+----+--------+------------+
| 6 | Gungun | 2010-10-25 |
| 10 | Hendri | NULL |
| 11 | Ina | NULL |
+----+--------+------------+
3 rows in set (0.00 sec)
Praktikum Sistem Basis Data
(Database Server MySQL)
29 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
UPDATE
• UPDATE digunakan untuk mengganti isi data.
• Bentuk umum penggunaan update adalah :
• Keterangan :
– WHERE digunakan untuk membatasi banyaknya baris yang diupdate
– ORDER BY digunakan untuk melakukan pengurutan data yang akan
diupdate.
– LIMIT digunakan untuk membatasi baris yang akan diupdate (setelah
data dibatasi dengan WHERE).
UPDATE nama_tabel
SET kolom1={isi|DEFAULT} [, kolom2={expr2|DEFAULT}] ...]
[WHERE kondisi_where]
[ORDER BY nama_kolom_pengurutan]
[LIMIT banyak_baris]
Praktikum Sistem Basis Data
(Database Server MySQL)
30 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh data :
Menghasilkan :
– SQL insert akan melakukan pengisian data sebanyak 4 baris dalam
satu kali eksekusi query INSERT.
– Setiap daftar isi kolom dipisahkan dengan koma (,).
select * from member;
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 1 | Adi | 1980-06-10 | 65.50 | A |
| 2 | Budi | 1985-12-10 | 50.00 | T |
| 3 | Catur | NULL | NULL | A |
| 4 | Eni | NULL | NULL | A |
| 5 | Febri | 1990-10-12 | 60.00 | T |
| 6 | Gungun | 2010-10-25 | NULL | A |
| 10 | Hendri | NULL | NULL | A |
| 11 | Ina | NULL | NULL | A |
+----+--------+------------+-------+--------+
8 rows in set (0.00 sec)
UPDATE
Praktikum Sistem Basis Data
(Database Server MySQL)
31 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
Keterangan :
Update seluruh (tanpa where) baris dengan mengisi (set)
kolom nama dengan upper(nama).
update member set nama=upper(nama);
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 1 | ADI | 1980-06-10 | 65.50 | A |
| 2 | BUDI | 1985-12-10 | 50.00 | T |
| 3 | CATUR | NULL | NULL | A |
| 4 | ENI | NULL | NULL | A |
| 5 | FEBRI | 1990-10-12 | 60.00 | T |
| 6 | GUNGUN | 2010-10-25 | NULL | A |
| 10 | HENDRI | NULL | NULL | A |
| 11 | INA | NULL | NULL | A |
+----+--------+------------+-------+--------+
8 rows in set (0.00 sec)
UPDATE
Praktikum Sistem Basis Data
(Database Server MySQL)
32 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
Keterangan :
Update baris yang tgllahir-nya null dengan mengisi (set) kolom
tgllhr dengan tanggal 1-Januari-1900.
update member set tgllhr=19000101 where tgllhr is null;
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 1 | ADI | 1980-06-10 | 65.50 | A |
| 2 | BUDI | 1985-12-10 | 50.00 | T |
| 3 | CATUR | 1900-01-01 | NULL | A |
| 4 | ENI | 1900-01-01 | NULL | A |
| 5 | FEBRI | 1990-10-12 | 60.00 | T |
| 6 | GUNGUN | 2010-10-25 | NULL | A |
| 10 | HENDRI | 1900-01-01 | NULL | A |
| 11 | INA | 1900-01-01 | NULL | A |
+----+--------+------------+-------+--------+
8 rows in set (0.00 sec)
UPDATE
Praktikum Sistem Basis Data
(Database Server MySQL)
33 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
Keterangan : Update 2 baris pertama yang mempunyai berat
paling besar(order by berat desc) dengan menambahkan 1
pada kolom berat.
update member set berat=berat+1 order by berat desc limit 2;
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 1 | ADI | 1980-06-10 | 66.50 | A | <- Berubah
| 2 | BUDI | 1985-12-10 | 50.00 | T |
| 3 | CATUR | 1900-01-01 | NULL | A |
| 4 | ENI | 1900-01-01 | NULL | A |
| 5 | FEBRI | 1990-10-12 | 61.00 | T | <- Berubah
| 6 | GUNGUN | 2010-10-25 | NULL | A |
| 10 | HENDRI | 1900-01-01 | NULL | A |
| 11 | INA | 1900-01-01 | NULL | A |
+----+--------+------------+-------+--------+
8 rows in set (0.00 sec)
UPDATE
Praktikum Sistem Basis Data
(Database Server MySQL)
34 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
REPLACE
• REPLACE berkerja seperti INSERT. Perbedaannya adalah
jika terjadi error karena duplicate key, maka data lama akan
dihapus dan data baru diinsertkan.
• Bentuk umum penggunaan replaceadalah :
• Keterangan :
– Pemanggilannya mirip dengan insert, begitu juga aturan pengisian
datanya.
REPLACE
[INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])]
{VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
Praktikum Sistem Basis Data
(Database Server MySQL)
35 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
create table demoreplace(id int primary key, nama char(10));
insert into demoreplace values(1,'AA'),(2,'BB'),
(3,'CC'),(4,'DD');
select * from demoreplace;
+----+------+
| id | nama |
+----+------+
| 1 | AA |
| 2 | BB |
| 3 | CC |
| 4 | DD |
+----+------+
REPLACE
Praktikum Sistem Basis Data
(Database Server MySQL)
36 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
Keterangan :
• SQL pertama akan error : “ERROR 1062
(23000): Duplicate entry '1' for key 'PRIMARY'”
karena duplikat key.
• SQL kedua akan berhasil dan mengupdate data
insert into demoreplace values(1,'Ade'); -- Error Duplicate
replace into demoreplace values(1, 'Ade');
+----+------+
| id | nama |
+----+------+
| 1 | Ade |
| 2 | BB |
| 3 | CC |
| 4 | DD |
+----+------+
REPLACE
Praktikum Sistem Basis Data
(Database Server MySQL)
37 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh data :
Menghasilkan :
select * from member;
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 1 | ADI | 1980-06-10 | 66.50 | A |
| 2 | BUDI | 1985-12-10 | 50.00 | T |
| 3 | CATUR | 1900-01-01 | NULL | A |
| 4 | ENI | 1900-01-01 | NULL | A |
| 5 | FEBRI | 1990-10-12 | 61.00 | T |
| 6 | GUNGUN | 2010-10-25 | NULL | A |
| 10 | HENDRI | 1900-01-01 | NULL | A |
| 11 | INA | 1900-01-01 | NULL | A |
+----+--------+------------+-------+--------+
8 rows in set (0.00 sec)
DELETE
Praktikum Sistem Basis Data
(Database Server MySQL)
38 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
Penghapusan dilakukan pada data dengan no=6, sehingga
data menjadi :
delete from member where no=6;
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 1 | ADI | 1980-06-10 | 66.50 | A |
| 2 | BUDI | 1985-12-10 | 50.00 | T |
| 3 | CATUR | 1900-01-01 | NULL | A |
| 4 | ENI | 1900-01-01 | NULL | A |
| 5 | FEBRI | 1990-10-12 | 61.00 | T |
| 10 | HENDRI | 1900-01-01 | NULL | A |
| 11 | INA | 1900-01-01 | NULL | A |
+----+--------+------------+-------+--------+
7 rows in set (0.00 sec)
DELETE
Praktikum Sistem Basis Data
(Database Server MySQL)
39 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
Penghapusan 2 baris (limit 2) yang mempunyai berat paling
besar (order by berat desc). Data menjadi :
delete from member order by berat desc limit 2;
+----+--------+------------+-------+--------+
| no | nama | tgllhr | berat | status |
+----+--------+------------+-------+--------+
| 2 | BUDI | 1985-12-10 | 50.00 | T |
| 3 | CATUR | 1900-01-01 | NULL | A |
| 4 | ENI | 1900-01-01 | NULL | A |
| 10 | HENDRI | 1900-01-01 | NULL | A |
| 11 | INA | 1900-01-01 | NULL | A |
+----+--------+------------+-------+--------+
5 rows in set (0.00 sec)
DELETE
Praktikum Sistem Basis Data
(Database Server MySQL)
40 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh :
Penghapusan semua baris (tanpa where, tanpa limit). Data
menjadi “empty set”.
delete from member;
DELETE
Praktikum Sistem Basis Data
(Database Server MySQL)
41 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
TRUNCATE
• TRUNCATE berguna untuk melakukan panghapusan semua baris
(mirip dengan DELETE tanpa WHERE dan LIMIT).
• Format pemanggilan TRUNCATE adalah :
• Perbedaan antara TRUNCATE dan DELETE
– Jika penghapusan menggunakan DELETE, maka nilai auto_increment
tetap berlaku dan akan digunakan untuk insert berikutnya. Tetapi jika
menggunakan truncate, maka nilai auto_increment akan kembali ke nilai
awal.
– Penghapusan dengan DELETE dilakukan dengan melakukan
penghapusan per baris, tetapi TRUNCATE akan melakukan
penghapusan dengan DROP tabel dan kemudian CREATE tabel baru.
Hal ini akan menyebabkan eksekusi TRUNCATE akan lebih cepat
dibandingkan dengan DELETE.
TRUNCATE [TABLE] tbl_name
Praktikum Sistem Basis Data
(Database Server MySQL)
42 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh (penghapusan data dengan delete):
Keterangan :
• SQL kedua akan mengisi 3 data. Nilai auto_increment terakhir
adalah 3.
• SQL ketiga akan menghapus semua data.
• SQL keempat akan menambah data dengan nilai auto_increment
adalah 4
Create table demodelete(
id int primary key auto_increment, nama varchar(5));
Insert into demodelete(nama) values('aa'),('bb'),('cc');
Delete from demodelete;
Insert into demodelete(nama) values('dd');
TRUNCATE
Praktikum Sistem Basis Data
(Database Server MySQL)
43 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010
Contoh (penghapusan data dengan truncate):
Keterangan :
• SQL kedua akan mengisi 3 data. Nilai auto_increment terakhir
adalah 3.
• SQL ketiga akan menghapus semua data.
• SQL keempat akan menambah data dengan nilai auto_increment
kembali ke awal yaitu 1.
Create table demotruncate(
id int primary key auto_increment, nama varchar(5));
Insert into demotruncate(nama) values('aa'),('bb'),('cc');
Truncate table demotruncate;
Insert into demotruncate (nama) values('dd');
TRUNCATE

Weitere ähnliche Inhalte

Ähnlich wie DB-Insert

Ähnlich wie DB-Insert (14)

Bab 04-mengatur database my sql
Bab 04-mengatur database my sqlBab 04-mengatur database my sql
Bab 04-mengatur database my sql
 
Fendi dasar-mysql-menggunakan
Fendi dasar-mysql-menggunakanFendi dasar-mysql-menggunakan
Fendi dasar-mysql-menggunakan
 
Bab 05-pernyataan select (function)
Bab 05-pernyataan select (function)Bab 05-pernyataan select (function)
Bab 05-pernyataan select (function)
 
Tutorial membuat form dalam netbeans versi2
Tutorial membuat form dalam netbeans versi2Tutorial membuat form dalam netbeans versi2
Tutorial membuat form dalam netbeans versi2
 
Modul%20 mysql
Modul%20 mysqlModul%20 mysql
Modul%20 mysql
 
Bab. 5
Bab. 5Bab. 5
Bab. 5
 
Part 9 10 - retrieving data lant..
Part 9 10 - retrieving data lant..Part 9 10 - retrieving data lant..
Part 9 10 - retrieving data lant..
 
Mysql rahmat
Mysql rahmatMysql rahmat
Mysql rahmat
 
Mysql rahmat
Mysql rahmatMysql rahmat
Mysql rahmat
 
Tahap instalasi-postgresql-di-windows
Tahap instalasi-postgresql-di-windowsTahap instalasi-postgresql-di-windows
Tahap instalasi-postgresql-di-windows
 
Basis Data dengan MySQL
Basis Data dengan MySQLBasis Data dengan MySQL
Basis Data dengan MySQL
 
Modul mysql
Modul mysqlModul mysql
Modul mysql
 
Pratikum sistem basis data 3
Pratikum sistem basis data 3Pratikum sistem basis data 3
Pratikum sistem basis data 3
 
PELANGGARAN KODE ETIK BIDANG TI
PELANGGARAN KODE ETIK BIDANG TIPELANGGARAN KODE ETIK BIDANG TI
PELANGGARAN KODE ETIK BIDANG TI
 

Mehr von Materi Kuliah Online

Pengenalan Rekayasa Perangkat Lunak
Pengenalan Rekayasa Perangkat LunakPengenalan Rekayasa Perangkat Lunak
Pengenalan Rekayasa Perangkat LunakMateri Kuliah Online
 
Melangkah dengan Microsoft Windows Server 2003
Melangkah dengan Microsoft Windows Server 2003Melangkah dengan Microsoft Windows Server 2003
Melangkah dengan Microsoft Windows Server 2003Materi Kuliah Online
 
Studi Mengenai Aspek Privasi pada Sistem RFID
Studi Mengenai Aspek Privasi pada Sistem RFIDStudi Mengenai Aspek Privasi pada Sistem RFID
Studi Mengenai Aspek Privasi pada Sistem RFIDMateri Kuliah Online
 
Internet dan Layanan Aplikasi Terdistribusi
Internet dan Layanan Aplikasi TerdistribusiInternet dan Layanan Aplikasi Terdistribusi
Internet dan Layanan Aplikasi TerdistribusiMateri Kuliah Online
 
Aspek Security pada Penerapan m-Commerce di Indonesia
Aspek Security pada Penerapan m-Commerce di IndonesiaAspek Security pada Penerapan m-Commerce di Indonesia
Aspek Security pada Penerapan m-Commerce di IndonesiaMateri Kuliah Online
 
A Comparison of Proximity Authentication Approaches
A Comparison of Proximity Authentication ApproachesA Comparison of Proximity Authentication Approaches
A Comparison of Proximity Authentication ApproachesMateri Kuliah Online
 
Kajian Perkembangan Teknologi Smart Card dari Segi Keamanan
Kajian Perkembangan Teknologi Smart Card dari Segi KeamananKajian Perkembangan Teknologi Smart Card dari Segi Keamanan
Kajian Perkembangan Teknologi Smart Card dari Segi KeamananMateri Kuliah Online
 
Catu Daya dan Rangkaian Penyearah Gelombang
Catu Daya dan Rangkaian Penyearah GelombangCatu Daya dan Rangkaian Penyearah Gelombang
Catu Daya dan Rangkaian Penyearah GelombangMateri Kuliah Online
 
Simulasi Anti Integral Windup dengan Clamp Integrator
Simulasi Anti Integral Windup dengan Clamp IntegratorSimulasi Anti Integral Windup dengan Clamp Integrator
Simulasi Anti Integral Windup dengan Clamp IntegratorMateri Kuliah Online
 
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware Technology
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware TechnologyPrinsip-prinsip Asas E-Construction, K-Constructions dan Groupware Technology
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware TechnologyMateri Kuliah Online
 
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan Telepon
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan TeleponPenggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan Telepon
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan TeleponMateri Kuliah Online
 
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara Wireless
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara WirelessPenggunaan DT-Basic Untuk Membaca Nomor Identitas Secara Wireless
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara WirelessMateri Kuliah Online
 

Mehr von Materi Kuliah Online (20)

Sekilas tentang HaKI
Sekilas tentang HaKISekilas tentang HaKI
Sekilas tentang HaKI
 
Pengenalan Rekayasa Perangkat Lunak
Pengenalan Rekayasa Perangkat LunakPengenalan Rekayasa Perangkat Lunak
Pengenalan Rekayasa Perangkat Lunak
 
Pemodelan Basis Data Lainnya
Pemodelan Basis Data LainnyaPemodelan Basis Data Lainnya
Pemodelan Basis Data Lainnya
 
Arsitektur Sistem Basis Data
Arsitektur Sistem Basis DataArsitektur Sistem Basis Data
Arsitektur Sistem Basis Data
 
Access control-systems
Access control-systemsAccess control-systems
Access control-systems
 
Melangkah dengan Microsoft Windows Server 2003
Melangkah dengan Microsoft Windows Server 2003Melangkah dengan Microsoft Windows Server 2003
Melangkah dengan Microsoft Windows Server 2003
 
Studi Mengenai Aspek Privasi pada Sistem RFID
Studi Mengenai Aspek Privasi pada Sistem RFIDStudi Mengenai Aspek Privasi pada Sistem RFID
Studi Mengenai Aspek Privasi pada Sistem RFID
 
Remote control alarm sepeda motor
Remote control alarm sepeda motorRemote control alarm sepeda motor
Remote control alarm sepeda motor
 
Internet dan Layanan Aplikasi Terdistribusi
Internet dan Layanan Aplikasi TerdistribusiInternet dan Layanan Aplikasi Terdistribusi
Internet dan Layanan Aplikasi Terdistribusi
 
Aspek Security pada Penerapan m-Commerce di Indonesia
Aspek Security pada Penerapan m-Commerce di IndonesiaAspek Security pada Penerapan m-Commerce di Indonesia
Aspek Security pada Penerapan m-Commerce di Indonesia
 
A Comparison of Proximity Authentication Approaches
A Comparison of Proximity Authentication ApproachesA Comparison of Proximity Authentication Approaches
A Comparison of Proximity Authentication Approaches
 
Kajian Perkembangan Teknologi Smart Card dari Segi Keamanan
Kajian Perkembangan Teknologi Smart Card dari Segi KeamananKajian Perkembangan Teknologi Smart Card dari Segi Keamanan
Kajian Perkembangan Teknologi Smart Card dari Segi Keamanan
 
Catu Daya dan Rangkaian Penyearah Gelombang
Catu Daya dan Rangkaian Penyearah GelombangCatu Daya dan Rangkaian Penyearah Gelombang
Catu Daya dan Rangkaian Penyearah Gelombang
 
Dioda dan Catu Daya
Dioda dan Catu DayaDioda dan Catu Daya
Dioda dan Catu Daya
 
Simulasi Anti Integral Windup dengan Clamp Integrator
Simulasi Anti Integral Windup dengan Clamp IntegratorSimulasi Anti Integral Windup dengan Clamp Integrator
Simulasi Anti Integral Windup dengan Clamp Integrator
 
Radio Frequency Identification
Radio Frequency IdentificationRadio Frequency Identification
Radio Frequency Identification
 
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware Technology
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware TechnologyPrinsip-prinsip Asas E-Construction, K-Constructions dan Groupware Technology
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware Technology
 
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan Telepon
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan TeleponPenggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan Telepon
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan Telepon
 
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara Wireless
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara WirelessPenggunaan DT-Basic Untuk Membaca Nomor Identitas Secara Wireless
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara Wireless
 
Interfacing Number Display
Interfacing Number DisplayInterfacing Number Display
Interfacing Number Display
 

Kürzlich hochgeladen

Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxBab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxssuser35630b
 
Dasar-Dasar Sakramen dalam gereja katolik
Dasar-Dasar Sakramen dalam gereja katolikDasar-Dasar Sakramen dalam gereja katolik
Dasar-Dasar Sakramen dalam gereja katolikThomasAntonWibowo
 
Perumusan Visi dan Prakarsa Perubahan.pptx
Perumusan Visi dan Prakarsa Perubahan.pptxPerumusan Visi dan Prakarsa Perubahan.pptx
Perumusan Visi dan Prakarsa Perubahan.pptxadimulianta1
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAAndiCoc
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxssuser50800a
 
UT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk Hidup
UT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk HidupUT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk Hidup
UT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk Hidupfamela161
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxPurmiasih
 
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...Kanaidi ken
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxdpp11tya
 
Hiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaa
HiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaaHiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaa
Hiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaafarmasipejatentimur
 
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdfaksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdfwalidumar
 
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptxPPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptxssuser8905b3
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDNurainiNuraini25
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdfsdn3jatiblora
 
contoh penulisan nomor skl pada surat kelulusan .pptx
contoh penulisan nomor skl pada surat kelulusan  .pptxcontoh penulisan nomor skl pada surat kelulusan  .pptx
contoh penulisan nomor skl pada surat kelulusan .pptxHR MUSLIM
 
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfAksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfDimanWr1
 
Integrasi nasional dalam bingkai bhinneka tunggal ika
Integrasi nasional dalam bingkai bhinneka tunggal ikaIntegrasi nasional dalam bingkai bhinneka tunggal ika
Integrasi nasional dalam bingkai bhinneka tunggal ikaAtiAnggiSupriyati
 
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikaAtiAnggiSupriyati
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..ikayogakinasih12
 
Membuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxMembuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxNurindahSetyawati1
 

Kürzlich hochgeladen (20)

Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptxBab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
Bab 7 - Perilaku Ekonomi dan Kesejahteraan Sosial.pptx
 
Dasar-Dasar Sakramen dalam gereja katolik
Dasar-Dasar Sakramen dalam gereja katolikDasar-Dasar Sakramen dalam gereja katolik
Dasar-Dasar Sakramen dalam gereja katolik
 
Perumusan Visi dan Prakarsa Perubahan.pptx
Perumusan Visi dan Prakarsa Perubahan.pptxPerumusan Visi dan Prakarsa Perubahan.pptx
Perumusan Visi dan Prakarsa Perubahan.pptx
 
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKAMODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
MODUL AJAR MATEMATIKA KELAS 6 KURIKULUM MERDEKA
 
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptxKontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
Kontribusi Islam Dalam Pengembangan Peradaban Dunia - KELOMPOK 1.pptx
 
UT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk Hidup
UT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk HidupUT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk Hidup
UT PGSD PDGK4103 MODUL 2 STRUKTUR TUBUH Pada Makhluk Hidup
 
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docxLK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
LK.01._LK_Peta_Pikir modul 1.3_Kel1_NURYANTI_101.docx
 
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
RENCANA + Link2 Materi Pelatihan/BimTek "PTK 007 Rev-5 Thn 2023 (PENGADAAN) &...
 
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptxPPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
PPT PERUBAHAN LINGKUNGAN MATA PELAJARAN BIOLOGI KELAS X.pptx
 
Hiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaa
HiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaaHiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaa
Hiperlipidemiaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdfaksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
aksi nyata - aksi nyata refleksi diri dalam menyikapi murid.pdf
 
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptxPPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
PPT AKUNTANSI KEUANGAN MENENGAH DUA.pptx
 
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SDPPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
PPT AKSI NYATA KOMUNITAS BELAJAR .ppt di SD
 
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf2 KISI-KISI Ujian Sekolah Dasar  mata pelajaranPPKn 2024.pdf
2 KISI-KISI Ujian Sekolah Dasar mata pelajaranPPKn 2024.pdf
 
contoh penulisan nomor skl pada surat kelulusan .pptx
contoh penulisan nomor skl pada surat kelulusan  .pptxcontoh penulisan nomor skl pada surat kelulusan  .pptx
contoh penulisan nomor skl pada surat kelulusan .pptx
 
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdfAksi nyata disiplin positif Hj. Hasnani (1).pdf
Aksi nyata disiplin positif Hj. Hasnani (1).pdf
 
Integrasi nasional dalam bingkai bhinneka tunggal ika
Integrasi nasional dalam bingkai bhinneka tunggal ikaIntegrasi nasional dalam bingkai bhinneka tunggal ika
Integrasi nasional dalam bingkai bhinneka tunggal ika
 
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ikabab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
bab 6 ancaman terhadap negara dalam bingkai bhinneka tunggal ika
 
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
AKSI NYATA NARKOBA ATAU OBAT TERLARANG..
 
Membuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docxMembuat Komik Digital Berisi Kritik Sosial.docx
Membuat Komik Digital Berisi Kritik Sosial.docx
 

DB-Insert

  • 1. Praktikum Sistem Basis Data (Database Server MySQL) 1 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Data Manipulation Language (DML)
  • 2. Praktikum Sistem Basis Data (Database Server MySQL) 2 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 DML Perintah SQL yang termasuk dalam DML adalah : • INSERT • SELECT • UPDATE • REPLACE • DELETE • TRUNCATE
  • 3. Praktikum Sistem Basis Data (Database Server MySQL) 3 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT • INSERT digunakan untuk menambahkan data ke suatu tabel. • Bentuk umum pemanggilan insert adalah : • Keterangan : – INTO sifatnya opsional. Boleh ditulis, boleh tidak. – Daftar nama kolom boleh ditulis, boleh tidak. Jika tidak ditulis, maka dianggap sesuai urutan nama kolom dalam pendefinisian tabel (lihat dengan perintah DESC namatabel. Gunakan koma sebagai pemisah. – {VALUE | VALUES}, wajib ditulis. Boleh VALUE atau VALUES. – Isi kolom harus sesuai dengan urutan daftar nama kolom. Boleh diisi ekspresi atau DEFAULT. Gunakan koma sebagai pemisah. INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])] {VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
  • 4. Praktikum Sistem Basis Data (Database Server MySQL) 4 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT • Contoh : create table member( no int primary key auto_increment, nama varchar(50) not null, tgllhr date, berat decimal(6,2), status enum('A','T') default 'A' );
  • 5. Praktikum Sistem Basis Data (Database Server MySQL) 5 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh : • Keterangan : – Menggunakan INTO – Daftar isi kolom tidak disebutkan, sehingga semua kolom harus disebut. – Menggunakan VALUE. – Kolom yang AUTO_INCREMENT diisi dengan nilai NULL. – Pengisian data untuk setiap kolom ditulis sesuai urutan kolom dalam pendefinisian tabel. insert into member value(null,'Adi','1980-06-10',65.5,'A');
  • 6. Praktikum Sistem Basis Data (Database Server MySQL) 6 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh : • Keterangan : – Tidak menggunakan INTO – Daftar isi kolom tidak disebutkan, sehingga semua kolom harus disebut. – Menggunakan VALUES. – Kolom yang AUTO_INCREMENT diisi dengan nilai NULL. – Pengisian data untuk setiap kolom ditulis sesuai urutan kolom dalam pendefinisian tabel. insert member values(null,'Budi','1985-12-10',50,'T');
  • 7. Praktikum Sistem Basis Data (Database Server MySQL) 7 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh : • Keterangan : – Daftar isi kolom disebutkan (nama, status), sehingga hanya kolom tertentu yang akan disebut isinya. – Kolom status diisi dengan DEFAULT. Ini menyatakan bahwa kolom tersebut akan diisi dengan nilai DEFAULT kolom. Dalam hal ini kolom status akan berisi „A‟. insert into member(nama,status) values('Eni',DEFAULT);
  • 8. Praktikum Sistem Basis Data (Database Server MySQL) 8 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh : • Keterangan : – Pengisian data dengan nama Febri. – Untuk melihat nilai hasil AUTO_INCREMENT, gunakan function LAST_INSERT_ID(). insert into member values(null,'Febri','1990-10- 12',60,'T'); select last_insert_id();
  • 9. Praktikum Sistem Basis Data (Database Server MySQL) 9 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh : • Keterangan : – Pengisian data untuk kolom menggunakan function now() yang berguna untuk mengisi data tanggal sekarang di komputer. insert into member (nama,tgllhr) values('Gungun',now());
  • 10. Praktikum Sistem Basis Data (Database Server MySQL) 10 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh : • Keterangan : – Pada insert yang pertama, nilai auto_increment diisi secara manual dengan nilai 10. – Insert ke-dua akan menghasilkan nilai auto_increment 11 karena nilai auto_increment sebelumnya telah diisi dengan nilai 10. insert into member (no,nama) values(10,'Hendri'); insert into member (no,nama) values(null,'Ina');
  • 11. Praktikum Sistem Basis Data (Database Server MySQL) 11 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh salah: • Keterangan : – Akan menghasilkan error “ERROR 1062 (23000): Duplicate entry '10' for key 'PRIMARY'”, karena nomor dengan nilai 10 sudah ada di tabel. insert into member (no,nama) values(10,'Hendra');
  • 12. Praktikum Sistem Basis Data (Database Server MySQL) 12 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh salah: • Keterangan : – Akan menghasilkan error “ERROR 1136 (21S01): Column count doesn't match value count at row 1”, karena banyaknya kolom di daftar isian kolom (4 kolom) tidak sesuai dengan banyaknya kolom dalam pendefinisian kolom (5 kolom). insert into member values(null,'Rendi','19900601',67);
  • 13. Praktikum Sistem Basis Data (Database Server MySQL) 13 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh salah: • Keterangan : – Akan menghasilkan error “ERROR 1136 (21S01): Column count doesn't match value count at row 1”, karena banyaknya kolom di daftar isian kolom (3 kolom) tidak sesuai dengan banyaknya kolom yang akan diisi (2 kolom). insert into member(nama,tgllhr) values('Jefry','19900601',67);
  • 14. Praktikum Sistem Basis Data (Database Server MySQL) 14 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh salah: • Keterangan : – Akan menghasilkan error “ERROR 1366 (HY000): Incorrect decimal value: 'a67' for column 'berat' at row 1”, karena adanya kesalahan dalam pengisian data. Seharusnya diisi dengan angka. insert into member(nama,berat) values('Jefry', 'a67');
  • 15. Praktikum Sistem Basis Data (Database Server MySQL) 15 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh salah: • Keterangan : – Akan menghasilkan error “ERROR 1264 (22003): Out of range value for column 'berat' at row 1”, karena adanya kesalahan dalam pengisian data. Karena menggunakan decimal(6,2) maka isi kolom berat tidak boleh lebih dari 9999.99. insert into member(nama,berat) values('Jefry', 10000);
  • 16. Praktikum Sistem Basis Data (Database Server MySQL) 16 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT Contoh salah: • Keterangan : – Akan menghasilkan error “ERROR 1364 (HY000): Field 'nama' doesn't have a default value”, karena adanya kesalahan yang diakibatkan oleh karena kolom nama tidak diisi dan tidak mempunyai nilai value. Hal ini menjadi error karena nama didefinisikan sebagai NOT NULL, insert into member(tgllhr,berat) values(1995,55);
  • 17. Praktikum Sistem Basis Data (Database Server MySQL) 17 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT … SELECT • INSERT … SELECT digunakan untuk melakukan pengisian data yang datanya diambil dari tabel lain. • Bentuk umum pemanggilan insert adalah : • Keterangan : – Daftar kolom INSERT harus sesuai dengan daftar_kolom dalam SELECT. – Tidak ada VALUE/VALUES. Bagian VALUE/VALUES diganti dengan SELECT. INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])] SELECT {*|daftar_kolom} FROM nama_tabel_sumber;
  • 18. Praktikum Sistem Basis Data (Database Server MySQL) 18 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT … SELECT Contoh salah: • Keterangan : – SQL pertama akan membuat tabel negara. – SQL kedua akan melakukan insert ke tabel negara dengan isi diambil dari SQL select dari tabel country yang ada di skema world. create table negara( kode varchar(3) primary key, nama varchar(52) ); insert into negara select code,name from world.country;
  • 19. Praktikum Sistem Basis Data (Database Server MySQL) 19 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT DELAYED • INSERT DELAYED digunakan untuk melakukan pengisian data dimana server akan menempatkan baris yang akan diinsertkan ke buffer. Proses insert akan dilakukan ketika tabel sedang tidak digunakan oleh proses lain. Dengan cara ini, penyisipan akan dilakukan tanpa harus menunggu status insertnya selesai. • Keterangan : – DELAYED ditempatkan setelah perintah INSERT. – Hanya berlaku untuk tabel berengine MyISAM, MEMORY, ARCHIVE. INSERT DELAYED [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])] {VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
  • 20. Praktikum Sistem Basis Data (Database Server MySQL) 20 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT DELAYED Contoh: • Keterangan : – SQL pertama akan membuat tabel negara. – SQL kedua akan melakukan insert ke tabel negara dengan isi diambil dari SQL select dari tabel country yang ada di skema world. create table demodelayed(angka int) Engine=MyISAM; insert delayed into demodelayed values(10);
  • 21. Praktikum Sistem Basis Data (Database Server MySQL) 21 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT … ON DUPLICATE KEY UPDATE • Perintah INSERT … ON DUPLICATE KEY UPDATE digunakan untuk menyisipkan data (INSERT). Jika data yang dimasukkan ternyata mengakibatkan DUPLICATE KEY, maka operasi yang akan dilakukan bukanlah INSERT tapi UPDATE. • Perintah ini akan menghidari terjadinya error DUPLICATE KEY ketika ada pengisian data baru. INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])] {VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...]) ON DUPLICATE KEY UPDATE kolom_update1=isi1[,kolom_update2=isi2];
  • 22. Praktikum Sistem Basis Data (Database Server MySQL) 22 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 INSERT … ON DUPLICATE KEY UPDATE Contoh: • Keterangan : – Pada SQL ke-4, akan terjadi error jika menginsert data dengan angka 1 (karena sudah ada). – SQL-5 tidak akan menghasilkan error, karena menggunakan ON DUPLICATE KEY UPDATE. Ketika terjadi DUPLICATE UPDATE, maka akan mengupdate kolom angka2 dengan nilai baru (values) yang diinsertkan. Value digunakan untuk mengambil nilai dari baris yang diinsertkan. create table demodupkey(angka int primary key, angka2 int); insert into demodupkey values(1,2); insert into demodupkey values (2,100); insert into demodupkey values (1,5); -- Akan ERROR insert into demodupkey values (1,5) on duplicate key update angka2=values(angka2);
  • 23. Praktikum Sistem Basis Data (Database Server MySQL) 23 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 MULTIROW INSERT • Multirow insert digunakan untuk melakukan penambahan lebih dari 1 baris baru dalam sekali INSERT. • Bentuk umum pemanggilan multirow insert adalah : • Keterangan : – Pada bagian setelah VALUES, daftar isi kolom bisa dilakukan lebih dari 1 kali. INSERT [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])] {VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...]) [, (isi_kolom1[, isi_kolom2, ...])]
  • 24. Praktikum Sistem Basis Data (Database Server MySQL) 24 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 MULTIROW INSERT Contoh: • Keterangan : – SQL insert akan melakukan pengisian data sebanyak 4 baris dalam satu kali eksekusi query INSERT. – Setiap daftar isi kolom dipisahkan dengan koma (,). create table demomultirow(angka int); insert into demomultirow values(5),(7),(4),(3);
  • 25. Praktikum Sistem Basis Data (Database Server MySQL) 25 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 SELECT • SELECT digunakan untuk mengambil data dari database. • Bentuk umum pemanggilan SELECT adalah : • Keterangan : – * digunakan untuk menampilkan semua kolom yang ada dalam tabel – Daftar_kolom digunakan untuk mengampikan kolom tertentu saja – WHERE digunakan jika ingin membatasi data yang ditampilkan • Perintah SELECT lebih lanjut akan diterangkan pada bab-bab berikutnya. SELECT {*|daftar_kolom} FROM nama_tabel [WHERE kondisi_where]
  • 26. Praktikum Sistem Basis Data (Database Server MySQL) 26 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 SELECT Contoh: Menghasilkan : – SQL insert akan melakukan pengisian data sebanyak 4 baris dalam satu kali eksekusi query INSERT. – Setiap daftar isi kolom dipisahkan dengan koma (,). Select * from member; +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 1 | Adi | 1980-06-10 | 65.50 | A | | 2 | Budi | 1985-12-10 | 50.00 | T | | 3 | Catur | NULL | NULL | A | | 4 | Eni | NULL | NULL | A | | 5 | Febri | 1990-10-12 | 60.00 | T | | 6 | Gungun | 2010-10-25 | NULL | A | | 10 | Hendri | NULL | NULL | A | | 11 | Ina | NULL | NULL | A | +----+--------+------------+-------+--------+ 8 rows in set (0.00 sec)
  • 27. Praktikum Sistem Basis Data (Database Server MySQL) 27 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 SELECT Contoh: Menghasilkan : – SQL insert akan melakukan pengisian data sebanyak 4 baris dalam satu kali eksekusi query INSERT. – Setiap daftar isi kolom dipisahkan dengan koma (,). select no,nama,tgllhr from member; +----+--------+------------+ | no | nama | tgllhr | +----+--------+------------+ | 1 | Adi | 1980-06-10 | | 2 | Budi | 1985-12-10 | | 3 | Catur | NULL | | 4 | Eni | NULL | | 5 | Febri | 1990-10-12 | | 6 | Gungun | 2010-10-25 | | 10 | Hendri | NULL | | 11 | Ina | NULL | +----+--------+------------+ 8 rows in set (0.00 sec)
  • 28. Praktikum Sistem Basis Data (Database Server MySQL) 28 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 SELECT Contoh: Menghasilkan : – SQL insert akan melakukan pengisian data sebanyak 4 baris dalam satu kali eksekusi query INSERT. – Setiap daftar isi kolom dipisahkan dengan koma (,). select no,nama,tgllhr from member where no>5; +----+--------+------------+ | no | nama | tgllhr | +----+--------+------------+ | 6 | Gungun | 2010-10-25 | | 10 | Hendri | NULL | | 11 | Ina | NULL | +----+--------+------------+ 3 rows in set (0.00 sec)
  • 29. Praktikum Sistem Basis Data (Database Server MySQL) 29 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 UPDATE • UPDATE digunakan untuk mengganti isi data. • Bentuk umum penggunaan update adalah : • Keterangan : – WHERE digunakan untuk membatasi banyaknya baris yang diupdate – ORDER BY digunakan untuk melakukan pengurutan data yang akan diupdate. – LIMIT digunakan untuk membatasi baris yang akan diupdate (setelah data dibatasi dengan WHERE). UPDATE nama_tabel SET kolom1={isi|DEFAULT} [, kolom2={expr2|DEFAULT}] ...] [WHERE kondisi_where] [ORDER BY nama_kolom_pengurutan] [LIMIT banyak_baris]
  • 30. Praktikum Sistem Basis Data (Database Server MySQL) 30 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh data : Menghasilkan : – SQL insert akan melakukan pengisian data sebanyak 4 baris dalam satu kali eksekusi query INSERT. – Setiap daftar isi kolom dipisahkan dengan koma (,). select * from member; +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 1 | Adi | 1980-06-10 | 65.50 | A | | 2 | Budi | 1985-12-10 | 50.00 | T | | 3 | Catur | NULL | NULL | A | | 4 | Eni | NULL | NULL | A | | 5 | Febri | 1990-10-12 | 60.00 | T | | 6 | Gungun | 2010-10-25 | NULL | A | | 10 | Hendri | NULL | NULL | A | | 11 | Ina | NULL | NULL | A | +----+--------+------------+-------+--------+ 8 rows in set (0.00 sec) UPDATE
  • 31. Praktikum Sistem Basis Data (Database Server MySQL) 31 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : Keterangan : Update seluruh (tanpa where) baris dengan mengisi (set) kolom nama dengan upper(nama). update member set nama=upper(nama); +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 1 | ADI | 1980-06-10 | 65.50 | A | | 2 | BUDI | 1985-12-10 | 50.00 | T | | 3 | CATUR | NULL | NULL | A | | 4 | ENI | NULL | NULL | A | | 5 | FEBRI | 1990-10-12 | 60.00 | T | | 6 | GUNGUN | 2010-10-25 | NULL | A | | 10 | HENDRI | NULL | NULL | A | | 11 | INA | NULL | NULL | A | +----+--------+------------+-------+--------+ 8 rows in set (0.00 sec) UPDATE
  • 32. Praktikum Sistem Basis Data (Database Server MySQL) 32 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : Keterangan : Update baris yang tgllahir-nya null dengan mengisi (set) kolom tgllhr dengan tanggal 1-Januari-1900. update member set tgllhr=19000101 where tgllhr is null; +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 1 | ADI | 1980-06-10 | 65.50 | A | | 2 | BUDI | 1985-12-10 | 50.00 | T | | 3 | CATUR | 1900-01-01 | NULL | A | | 4 | ENI | 1900-01-01 | NULL | A | | 5 | FEBRI | 1990-10-12 | 60.00 | T | | 6 | GUNGUN | 2010-10-25 | NULL | A | | 10 | HENDRI | 1900-01-01 | NULL | A | | 11 | INA | 1900-01-01 | NULL | A | +----+--------+------------+-------+--------+ 8 rows in set (0.00 sec) UPDATE
  • 33. Praktikum Sistem Basis Data (Database Server MySQL) 33 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : Keterangan : Update 2 baris pertama yang mempunyai berat paling besar(order by berat desc) dengan menambahkan 1 pada kolom berat. update member set berat=berat+1 order by berat desc limit 2; +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 1 | ADI | 1980-06-10 | 66.50 | A | <- Berubah | 2 | BUDI | 1985-12-10 | 50.00 | T | | 3 | CATUR | 1900-01-01 | NULL | A | | 4 | ENI | 1900-01-01 | NULL | A | | 5 | FEBRI | 1990-10-12 | 61.00 | T | <- Berubah | 6 | GUNGUN | 2010-10-25 | NULL | A | | 10 | HENDRI | 1900-01-01 | NULL | A | | 11 | INA | 1900-01-01 | NULL | A | +----+--------+------------+-------+--------+ 8 rows in set (0.00 sec) UPDATE
  • 34. Praktikum Sistem Basis Data (Database Server MySQL) 34 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 REPLACE • REPLACE berkerja seperti INSERT. Perbedaannya adalah jika terjadi error karena duplicate key, maka data lama akan dihapus dan data baru diinsertkan. • Bentuk umum penggunaan replaceadalah : • Keterangan : – Pemanggilannya mirip dengan insert, begitu juga aturan pengisian datanya. REPLACE [INTO] nama_tabel[(nama_kolom1[, nama_kolom2, ...])] {VALUE | VALUES} (isi_kolom1[, isi_kolom2, ...])
  • 35. Praktikum Sistem Basis Data (Database Server MySQL) 35 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : create table demoreplace(id int primary key, nama char(10)); insert into demoreplace values(1,'AA'),(2,'BB'), (3,'CC'),(4,'DD'); select * from demoreplace; +----+------+ | id | nama | +----+------+ | 1 | AA | | 2 | BB | | 3 | CC | | 4 | DD | +----+------+ REPLACE
  • 36. Praktikum Sistem Basis Data (Database Server MySQL) 36 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : Keterangan : • SQL pertama akan error : “ERROR 1062 (23000): Duplicate entry '1' for key 'PRIMARY'” karena duplikat key. • SQL kedua akan berhasil dan mengupdate data insert into demoreplace values(1,'Ade'); -- Error Duplicate replace into demoreplace values(1, 'Ade'); +----+------+ | id | nama | +----+------+ | 1 | Ade | | 2 | BB | | 3 | CC | | 4 | DD | +----+------+ REPLACE
  • 37. Praktikum Sistem Basis Data (Database Server MySQL) 37 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh data : Menghasilkan : select * from member; +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 1 | ADI | 1980-06-10 | 66.50 | A | | 2 | BUDI | 1985-12-10 | 50.00 | T | | 3 | CATUR | 1900-01-01 | NULL | A | | 4 | ENI | 1900-01-01 | NULL | A | | 5 | FEBRI | 1990-10-12 | 61.00 | T | | 6 | GUNGUN | 2010-10-25 | NULL | A | | 10 | HENDRI | 1900-01-01 | NULL | A | | 11 | INA | 1900-01-01 | NULL | A | +----+--------+------------+-------+--------+ 8 rows in set (0.00 sec) DELETE
  • 38. Praktikum Sistem Basis Data (Database Server MySQL) 38 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : Penghapusan dilakukan pada data dengan no=6, sehingga data menjadi : delete from member where no=6; +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 1 | ADI | 1980-06-10 | 66.50 | A | | 2 | BUDI | 1985-12-10 | 50.00 | T | | 3 | CATUR | 1900-01-01 | NULL | A | | 4 | ENI | 1900-01-01 | NULL | A | | 5 | FEBRI | 1990-10-12 | 61.00 | T | | 10 | HENDRI | 1900-01-01 | NULL | A | | 11 | INA | 1900-01-01 | NULL | A | +----+--------+------------+-------+--------+ 7 rows in set (0.00 sec) DELETE
  • 39. Praktikum Sistem Basis Data (Database Server MySQL) 39 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : Penghapusan 2 baris (limit 2) yang mempunyai berat paling besar (order by berat desc). Data menjadi : delete from member order by berat desc limit 2; +----+--------+------------+-------+--------+ | no | nama | tgllhr | berat | status | +----+--------+------------+-------+--------+ | 2 | BUDI | 1985-12-10 | 50.00 | T | | 3 | CATUR | 1900-01-01 | NULL | A | | 4 | ENI | 1900-01-01 | NULL | A | | 10 | HENDRI | 1900-01-01 | NULL | A | | 11 | INA | 1900-01-01 | NULL | A | +----+--------+------------+-------+--------+ 5 rows in set (0.00 sec) DELETE
  • 40. Praktikum Sistem Basis Data (Database Server MySQL) 40 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh : Penghapusan semua baris (tanpa where, tanpa limit). Data menjadi “empty set”. delete from member; DELETE
  • 41. Praktikum Sistem Basis Data (Database Server MySQL) 41 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 TRUNCATE • TRUNCATE berguna untuk melakukan panghapusan semua baris (mirip dengan DELETE tanpa WHERE dan LIMIT). • Format pemanggilan TRUNCATE adalah : • Perbedaan antara TRUNCATE dan DELETE – Jika penghapusan menggunakan DELETE, maka nilai auto_increment tetap berlaku dan akan digunakan untuk insert berikutnya. Tetapi jika menggunakan truncate, maka nilai auto_increment akan kembali ke nilai awal. – Penghapusan dengan DELETE dilakukan dengan melakukan penghapusan per baris, tetapi TRUNCATE akan melakukan penghapusan dengan DROP tabel dan kemudian CREATE tabel baru. Hal ini akan menyebabkan eksekusi TRUNCATE akan lebih cepat dibandingkan dengan DELETE. TRUNCATE [TABLE] tbl_name
  • 42. Praktikum Sistem Basis Data (Database Server MySQL) 42 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh (penghapusan data dengan delete): Keterangan : • SQL kedua akan mengisi 3 data. Nilai auto_increment terakhir adalah 3. • SQL ketiga akan menghapus semua data. • SQL keempat akan menambah data dengan nilai auto_increment adalah 4 Create table demodelete( id int primary key auto_increment, nama varchar(5)); Insert into demodelete(nama) values('aa'),('bb'),('cc'); Delete from demodelete; Insert into demodelete(nama) values('dd'); TRUNCATE
  • 43. Praktikum Sistem Basis Data (Database Server MySQL) 43 Oleh : Andri Heryandi, MT, (andri@unikom.ac.id) Teknik Informatika – Universitas Komputer Indonesia (UNIKOM) - 2010 Contoh (penghapusan data dengan truncate): Keterangan : • SQL kedua akan mengisi 3 data. Nilai auto_increment terakhir adalah 3. • SQL ketiga akan menghapus semua data. • SQL keempat akan menambah data dengan nilai auto_increment kembali ke awal yaitu 1. Create table demotruncate( id int primary key auto_increment, nama varchar(5)); Insert into demotruncate(nama) values('aa'),('bb'),('cc'); Truncate table demotruncate; Insert into demotruncate (nama) values('dd'); TRUNCATE