MATERI PART 2 – Prak. BASISDATA
TABEL dan MANIPULASI DATA
LABORATORIUM 4 – BASISDATA
MENU PART INI :
1.
Tabel dengan PRIMARY KEY
2.
Memberikan nilai UNIQUE
3.
Parameter IF NOT EXISTS
4.
Menyalin tabel dengan statement SELECT
5.
Membuat TEMPORARY TABLE
6.
Tabel dengan FOREIGN KEY
7.
Memodifikasi tabel dengan ALTER TABLE
i. Menambah
kolom pada tabel
ii. Memodifikasi
nama tabel
iii. Memodifikasi
definisi tabel
iv. Mengganti
nama kolom
v. Menghapus
kolom
vi. Menambah
primary key
vii. Menghapus
semua data dalam tabel
8.
Memasukkan data lebih dari 1 data dengan INSERT
9.
INSERT menggunakan data dari tabel lain
10. Mengubah
data menggunakan UPDATE
11. Mengganti
data dari tabel
12. Menghapus
data dari tabel
1. Tabel dengan PRIMARY KEY
PRIMARY
KEY
-
untuk menjadikan filed kunci agar tidak terjadi
duplikasi data
CODE :
mysql>
create table t_pegawai(id_pegawai varchar(12) primary key, nama_peg varchar(50),
alamat_peg varchar(50));
Query
OK, 0 rows affected (0.07 sec)
LIHAT
DESKRIPSINYA…
mysql>
desc t_pegawai;
+------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+-------+
| id_peg | varchar(12) | NO | PRI | NULL
| |
| nama_peg | varchar(50) | YES | |
NULL | |
| alamat_peg |
varchar(50) | YES | | NULL
| |
+------------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)
ISI
TABELNYA
mysql>
select*from t_pegawai;
+---------+----------+------------+
| id_peg | nama_peg | alamat_peg |
+---------+----------+------------+
| HRD-001 | Chandra | Jakarta
|
| HRD-002 | Cindy | Bandung
|
+---------+----------+------------+
2 rows in set (0.00 sec)
LIHAT
ERRORNYA..
mysql>
insert into t_pegawai values('HRD-001','Budi','Jogja');
ERROR
1062 (23000): Duplicate entry 'HRD-001' for key
'PRIMARY'
2. Table dengan nilai UNIQUE
-
memberikan batasan bahwa nilai dalam sebuah kolom
harus distinct (atau tidak ada
data yang nilainya
sama)
CODE:
mysql> create
table t_parkir(id_parkir varchar(5) primary key, plat_no varchar(12), merk
varchar(10), UNIQUE(plat_no));
Query
OK, 0 rows affected (0.09 sec)
LIHAT
DESKRIPSINYA…
mysql>
desc t_parkir;
+-----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| id_parkir |
varchar(5) | NO | PRI | NULL |
|
| plat_no | varchar(12) | YES | UNI | NULL |
|
| merk | varchar(10) | YES | |
NULL | |
+-----------+-------------+------+-----+---------+-------+
3 rows
in set (0.00 sec)
ISI
TABEL
mysql>
select*from t_parkir;
+-----------+------------+--------+
| id_parkir |
plat_no | merk |
+-----------+------------+--------+
| 11101 | AB-1234-OP | TOYOTA |
| 11102 | B-3454-SDE | BMW |
+-----------+------------+--------+
2 rows
in set (0.00 sec)
LIHAT
ERRORNYA..
mysql>
insert into t_parkir values('11103','AB-1234-OP','JAGUAR');
ERROR
1062 (23000): Duplicate
entry 'AB-1234-OP' for key 'plat_no'
3. Parameter IF NOT EXISTS
untuk mengecek apakah sebuah tabel dengan nama yang sama sudah ada atau belum sebelum membuat tabel
mysql> show tables;
+-------------------+
| Tables_in_minggu2 |
+-------------------+
| t_parkir |
| t_pegawai |
+-------------------+
2 rows in set (0.00 sec)
CODE..
mysql> create
table IF NOT EXISTS t_pegawai(id_peg varchar(8) primary key, nama_peg varchar(50),
alamat_peg varchar(50));
Query OK, 0 rows affected, 1 warning
(0.00 sec)
4. Menyalin tabel dengan
statement SELECT
Kita juga bisa membuat tabel baru dengan mengkopy isi dari
tabel yang sudah ada, caranya
Pastikan kita sudah punya tabel yang sudah ada isinya..
Contoh :
Kita gunakan table t_parkir
mysql>
select*from t_parkir;
+-----------+------------+--------+
| id_parkir |
plat_no | merk |
+-----------+------------+--------+
| 11101 | AB-1234-OP | TOYOTA |
| 11102 | B-3454-SDE | BMW |
+-----------+------------+--------+
2 rows
in set (0.00 sec)
Lalu
kita buat tabel baru dengan nama t_parkir_copy
dengan mengduplikasi seluruh isi dari tabel t_parkir, caranya :
CODE..
mysql>
create table
t_parkir_copy as
select*from
t_parkir;
Query
OK, 2 rows affected (0.08 sec)
Records:
2 Duplicates: 0 Warnings: 0
Lalu
kita lihat hasil dari tabel t_parkir_copy :
mysql> select*from
t_parkir_copy;
+-----------+------------+--------+
| id_parkir |
plat_no | merk |
+-----------+------------+--------+
| 11101 | AB-1234-OP | TOYOTA |
| 11102 | B-3454-SDE | BMW |
+-----------+------------+--------+
2 rows
in set (0.00 sec)
Kita bisa lihat isi dari
tabel t_parkir_copy sama dengan isi tabel dari t_parkir.
5. Membuat TEMPORARY TABLE
Temporary
table adalah pembuatan table secara temporary atau sementara, jadi tabel
tersebut akan ada sewaktu kita buat hingga kita mematikan SQL kita.
Sebagai
contoh kita akan membuat tabel t_temporary
CODE:
mysql> create temporary table t_temporary(id int(8));
Query OK, 0 rows affected (0.09 sec)
Lihat
strukturnya..
mysql> desc t_temporary;
+-------+--------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------+------+-----+---------+-------+
| id
| int(8) | YES | | NULL
| |
+-------+--------+------+-----+---------+-------+
1 row in set (0.01 sec)
Jika
kita lihat dengan perintah SHOW TABLES
maka temporary tabel tidak akan muncul
mysql> show tables;
+-------------------+
| Tables_in_minggu2 |
+-------------------+
| t_parkir |
| t_parkir_copy |
| t_pegawai |
+-------------------+
3 rows in set (0.00 sec)
Tetapi
kita bisa menginputkan nilai ke temporary table, contohnya :
mysql> insert into t_temporary values('11100010');
Query OK, 1 row affected (0.03 sec)
mysql> insert into t_temporary
values('11100011');
Query OK, 1 row affected (0.02 sec)
mysql> insert into t_temporary
values('11100012');
Query OK, 1 row affected (0.02 sec)
mysql> insert into t_temporary
values('11100013');
Query OK, 1 row affected (0.01 sec)
mysql> select*from t_temporary;
+----------+
| id
|
+----------+
| 11100010 |
| 11100011 |
| 11100012 |
| 11100013 |
+----------+
4 rows in set (0.00 sec)
Tapi
jika kita matikan atau tutup MySQL kita maka temporary tabel akan langsung
hilang..
mysql> \q
bye
mysql> use minggu2;
Database changed
mysql> select*from t_temporary;
ERROR 1146 (42S02): Table 'minggu2.t_temporary' doesn't exist
6.
Tabel
dengan FOREIGN KEY
-
satu atau beberapa kolom
pada table yang merupakan primary key pada table satu namun diletakan pada
table dimana tablenya berelasi dengan table dirinya
Misal kita punya dua
tabel yang saling berkaitan contoh :
-
tabel induk : t_mobil dengan field(id_mobil, type)
-
tabel anak : t_stok dengan field(id_stok, id_mobil,
stok)
Kita buat dulu tabel induknya :
mysql> create table
t_mobil(id_mobil varchar(8) primary key, type varchar(20));
Query OK, 0 rows affected (0.07 sec)
mysql> desc t_mobil;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id_mobil | varchar(8) |
NO | PRI | NULL |
|
| type | varchar(20) |
YES |
| NULL | |
+----------+-------------+------+-----+---------+-------+
2 rows in set (0.01 sec)
Isi
tabel :
mysql> select*from t_mobil;
+----------+--------+
|
id_mobil | type |
+----------+--------+
|
HON-01 | Jazz |
|
TOY-01 | Avanza |
|
TOY-02 | Innova |
+----------+--------+
3 rows in set (0.00 sec)
Buat tabel anak :
mysql> create table t_stok(id_stok varchar(8) primary key, id_mobil
varchar(8), stok int(5), foreign key(id_mobil) references t_mobil(id_mobil));
Query OK, 0 rows affected (0.08 sec)
mysql> desc t_stok;
+----------+------------+------+-----+---------+-------+
|
Field | Type | Null | Key | Default | Extra |
+----------+------------+------+-----+---------+-------+
|
id_stok | varchar(8) | NO | PRI | NULL |
|
|
id_mobil | varchar(8) | YES | MUL |
NULL | |
|
stok | int(5) | YES
| | NULL |
|
+----------+------------+------+-----+---------+-------+
3 rows in set (0.01 sec)
ISI
TABEL :
mysql> select*from t_stok;
+---------+----------+------+
|
id_stok | id_mobil | stok |
+---------+----------+------+
|
ST-001 | TOY-01 | 1000 |
|
ST-002 | TOY-02 | 521
|
|
ST-003 | HON-01 | 875
|
+---------+----------+------+
3 rows in set (0.00 sec)
Kita akan buktikan apakah FOREIGN KEY kita berfungsi dengan
baik, kita bisa menggunakan code :
mysql> delete from t_mobil where id_mobil='TOY-01';
ERROR 1451 (23000): Cannot delete or update a parent row: a
foreign key constraint fails (`minggu2`. t_stok`, CONSTRAINT `t_stok_ibfk_1`
FOREIGN KEY (`id_mobil`) REFERENCES `t_mobil` (`id_mobil`))
Maksudnya adalah tidak
dapat menghapus atau mengupdate kolom pada table induk karena bereferensi pada
table t_stok.
Lalu bagaimana solusinya?
Pada MYSQL, kita harus menambahkan perintah ON DELETE [opsi]
dan ON UPDATE [opsi]pada table yang mereferensikan foreign key. Opsi pada
perintah tersebut jelasnya dibawah ini.
A. RESTRICT
Jika tabel anak berisi nilai dalam kolom yang
mengkait yang nilainya sama dengan di kolom terkait pada tabel induk, baris
dalam tabel induk tidak bisa dihapus, dan nilai di kolom terkait tidak dapat
diupdate. Ini adalah opsi default jika klausa ON DELETE atau ON UPDATE tidak
dispesifikasikan.
B. CASCADE
Baris-baris dalam tabel anak yang berisi nilai-nilai
yang juga terdapat dalam kolom terkait dari tabel induk dihapus ketika
barisbaris yang berkaitan dihapus dari tabel induk. Baris-baris dalam tabel
anak yang berisi nilai-nilai yang juga terdapat dalam kolom terkait dari tabel
induk diupdate ketika nilai-nilai yang berkaitan diupdate dalam tabel induk.
C. SET NULL
Nilai-nilai dalam kolom yang mengkait dari tabel
anak diset ke NULL saat baris-baris dengan data terkait dalam tabel induk
dihapus dari tabel induk atau ketika data terkait dalam tabel induk diupdate.
Untuk menggunakan opsi ini, semua kolom-kolom yang mengkait dalam tabel anak
harus mengijinkan nilai NULL.
D. NO ACTION
Tidak ada aksi yang diambil dalam tabel anak
ketika baris-baris dihapus dari tabel induk atau nilai-nilai dalam kolom
terkait dalam tabel induk diupdate.
E. SET DEFAULT
Nilai-nilai dalam kolom-kolom yang mengkait dari
tabel anak diset ke nilai default mereka ketika baris-baris dihapus dari tabel
induk atau kolom terkait dari tabel induk diupdate.
Untuk kali ini kita akan belajar tentang CASCADE, jadi data yang
terdapat di tabel induk dan tabel anak akan sama – sama terhapus atau
terupdate.
Langkah pertama kita ganti struktur dari tabel anak agar
memuat perintah untuk mengaktifkan “fitur” CASCADE
Hapus dulu tabel t_stok.
Mysql> drop table t_stok;
Rubah struktur tabel t_stok
mysql> create table t_stok(id_stok varchar(8) primary key, id_mobil
varchar(8), stok int(5), foreign key(id_mobil) references t_mobil(id_mobil) on delete cascade on update
cascade);
Query OK, 0 rows affected (0.06 sec)
mysql> desc t_stok;
+----------+------------+------+-----+---------+-------+
|
Field | Type | Null | Key | Default | Extra |
+----------+------------+------+-----+---------+-------+
|
id_stok | varchar(8) | NO | PRI | NULL |
|
|
id_mobil | varchar(8) | YES | MUL |
NULL | |
|
stok | int(5) | YES
| | NULL |
|
+----------+------------+------+-----+---------+-------+
3 rows in set (0.01 sec)
Isi
tabelnya lagi
mysql> insert into t_stok
values('ST-001','TOY-01','1000'),('ST-002','TOY-02','521'),('ST-003','HON-01','875');
Query OK, 3 rows affected (0.01 sec)
Records: 3 Duplicates:
0 Warnings: 0
mysql> select*from t_stok;
+---------+----------+------+
|
id_stok | id_mobil | stok |
+---------+----------+------+
|
ST-001 | TOY-01 | 1000 |
|
ST-002 | TOY-02 | 521
|
|
ST-003 | HON-01 | 875
|
+---------+----------+------+
3
rows in set (0.00 sec)
Setelah
itu, kita coba delete lagi :
mysql> delete from t_mobil where id_mobil='TOY-01';
Query OK, 1 row affected (0.01
sec)
Kita
lihat hasilnya…
mysql> select*from t_mobil;
+----------+--------+
Jadi setelah kita rubah struktur tabel anak, maka akan bisa
ter delete.
Data di tabel anak dan induk akan sama – sama ter hapus atau
ter update.
Itulah contoh penggunaan on delete cascade dan on upodate
cascade
|
+----------+--------+
|
HON-01 | Jazz |
|
TOY-02 | Innova |
+----------+--------+
2 rows in set (0.01 sec)
mysql> select*from t_stok;
+---------+----------+------+
|
id_stok | id_mobil | stok |
+---------+----------+------+
|
ST-002 | TOY-02 | 521
|
|
ST-003 | HON-01 | 875
|
+---------+----------+------+
2
rows in set (0.00 sec)
7.
Memodifikasi
Tabel dengan ALTER TABLE
a. Menambah Kolom pada Tabel
Dalam menambah kolom
dalam tabel kita bisa menggunakan perintah alter table, contohnya kita akan
menambahkan kolom pada tabel t_mobil :
mysql> alter table t_mobil add
harga bigint(11);
Query OK, 2 rows affected
(0.16 sec)
Records: 2 Duplicates: 0
Warnings: 0
mysql> desc t_mobil;
+----------+-------------+------+-----+---------+-------+
| Field
| Type | Null | Key |
Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id_mobil | varchar(8) | NO
| PRI | NULL | |
| type
| varchar(20) | YES | | NULL
| |
| harga
| bigint(11) | YES | |
NULL | |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)
Kita juga bisa mengatur
letak kolom yang akan kita buat
mysql> alter table t_mobil add
series varchar(8) after type;
Query OK, 2 rows affected
(0.12 sec)
Records: 2 Duplicates: 0
Warnings: 0
mysql> desc t_mobil;
+----------+-------------+------+-----+---------+-------+
| Field
| Type | Null | Key |
Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id_mobil | varchar(8) | NO
| PRI | NULL | |
| type
| varchar(20) | YES | | NULL
| |
| series | varchar(8) | YES
| | NULL |
|
| harga
| bigint(11) | YES | |
NULL | |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
b. Modifikasi Nama Tabel
Dalam memodifikasi
definisi tabel contohnya jika kita ingin mengganti definisi dari t_mobil maka
caranya :
mysql> alter table
t_mobil rename to t_car;
Query OK, 0 rows affected
(0.07 sec)
mysql> desc t_car;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id_mobil |
varchar(8) | NO | PRI | NULL |
|
| type | varchar(20) | YES | |
NULL | |
| series | varchar(8) | YES | |
NULL | |
| harga | bigint(11) | YES
| | NULL |
|
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.04 sec)
c. Modifikasi Definisi Tabel
Dalam memodifikasi
definisi tabel contohnya jika kita ingin mengganti definisi dari t_car maka caranya
:
mysql> alter table t_car modify type varchar(15), modify series
varchar(10);
mysql>
alter table pekerja modify gaji float;
Query OK, 2 rows affected
(0.14 sec)
Records: 2 Duplicates: 0
Warnings: 0
mysql> desc t_car;
+----------+-------------+------+-----+---------+-------+
| Field
| Type | Null | Key |
Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id_mobil | varchar(8) | NO
| PRI | NULL | |
| type
| varchar(15) | YES | | NULL
| |
| series
| varchar(10) | YES | | NULL
| |
| harga
| bigint(11) | YES | |
NULL | |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
d. Mengganti Nama Kolom
Dalam memodifikasi nama
kolom contohnya jika kita ingin mengganti nama kolom dari t_car maka caranya :
mysql>
alter table t_car change
harga harga_mobil bigint(11);
Query OK, 2 rows affected
(0.14 sec)
Records: 2 Duplicates: 0
Warnings: 0
mysql> desc t_car;
+-------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| id_mobil | varchar(8) | NO
| PRI | NULL | |
| type | varchar(15) | YES | |
NULL | |
| series | varchar(10) | YES | |
NULL | |
| harga_mobil | bigint(11) | YES
| | NULL |
|
+-------------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
e. Menghapus Kolom
Cara untuk menghapus
kolom dengan perintah ALTER TABLE adalah sbb, misal kita akan menghapus salah
satu kolom di t_car, maka caranya :
mysql>
alter table t_car drop
harga_mobil;
Query OK, 2 rows affected
(0.12 sec)
Records: 2 Duplicates: 0
Warnings: 0
mysql> desc t_car;
+----------+-------------+------+-----+---------+-------+
| Field
| Type | Null | Key |
Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id_mobil | varchar(8) | NO
| PRI | NULL | |
| type
| varchar(15) | YES | | NULL
| |
| series
| varchar(10) | YES | | NULL
| |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)
f. Menghapus & Menambah Primary Key
Cara untuk menghapus & menambah primary key dengan
perintah ALTER TABLE adalah sbb, misal kita akan menghapus & menambah
primary key di suatu table, maka caranya :
Hapus primary key
mysql>
alter table
t_pegawai drop
primary key;
Query OK, 0 rows affected (0.17 sec)
Records: 0 Duplicates:
0 Warnings: 0
mysql> desc t_pegawai;
+------------+-------------+------+-----+---------+-------+
| Field
| Type | Null | Key |
Default | Extra |
+------------+-------------+------+-----+---------+-------+
| id_peg
| varchar(8) | NO |
| NULL | |
| nama_peg
| varchar(50) | YES | | NULL
| |
| alamat_peg | varchar(50) | YES | |
NULL | |
+------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
Tambah
primary key
mysql> alter table
t_pegawai add
primary key (id_pegawai);
Query
OK, 0 rows affected (0.53 sec)
Records:
0 Duplicates: 0 Warnings: 0
mysql> desc t_pegawai;
+------------+-------------+------+-----+---------+-------+
| Field
| Type | Null | Key |
Default | Extra |
+------------+-------------+------+-----+---------+-------+
| id_peg
| varchar(8) | NO | PRI | NULL |
|
| nama_peg
| varchar(50) | YES | | NULL
| |
| alamat_peg | varchar(50) | YES | |
NULL | |
+------------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
g. Menghapus Semua Data dalam Tabel
Untuk menghapus seluruh isi dalam
tabel menggunakan perintah TRUNCATE
Misal kita akan menghapus
seluruh table dari tabel t_parkir_copy maka sytxnya sbb:
mysql> select*from
t_parkir_copy;
+-----------+------------+--------+
| id_parkir | plat_no | merk
|
+-----------+------------+--------+
| 11101
| AB-1234-OP | TOYOTA |
| 11102
| B-3454-SDE | BMW |
+-----------+------------+--------+
2 rows in set (0.03 sec)
Menggunakan
perintah TRUNCATE dalam menghapus seluruh ISI tabel
mysql>
truncate
table t_parkir_copy;
Query OK, 0 rows affected (0.05 sec)
mysql> select*from t_parkir_copy;
Empty set (0.00 sec)
8.
Memasukkan
data lebih dari 1 data dengan INSERT
Perintah INSERT dalam memasukkan data juga melayani
pemasukkan data lebih dari 1 data sekaligus, misal kita akan memasukkan data di
table t_parkir maka syntax yang digunakan sbb:
mysql>
insert into t_parkir
values('11103','AB-5555-UX','HONDA'), ('11104','H-36-B','SUZUKI'),('11105','N-7876-OK','KIA');
Query OK, 3 rows affected
(0.05 sec)
Records: 3 Duplicates: 0
Warnings: 0
mysql> select*from
t_parkir;
+-----------+------------+--------+
| id_parkir | plat_no | merk
|
+-----------+------------+--------+
| 11101
| AB-1234-OP | TOYOTA |
| 11102
| B-3454-SDE | BMW |
| 11103
| AB-5555-UX | HONDA |
| 11104
| BH-36-B | SUZUKI |
| 11105
| N-7876-OK | KIA |
+-----------+------------+--------+
5 rows in set (0.00 sec)
9.
INSERT
Menggunakan Data dari Tabel Lain
Perintah ini mirip dengan perintah copy tabel SELECT tapi
yang membedakan perintah ini digunakan setelah terdapat tabel yang akan
digunakan untuk menyimpan hasil copyan file dan bisa diatur seluruh field atau
sebagian field, syntxnya adalah sbb :
Kita siapkan dulu tabel baru, bernama table t_user
mysql> create table t_user(no_plat varchar(10), merk_kend
varchar(20));
Query OK, 0 rows affected
(0.05 sec)
mysql> desc t_user;
+-----------+-------------+------+-----+---------+-------+
| Field
| Type | Null | Key |
Default | Extra |
+-----------+-------------+------+-----+---------+-------+
| no_plat
| varchar(10) | YES | | NULL
| |
| merk_kend | varchar(20) | YES | |
NULL | |
+-----------+-------------+------+-----+---------+-------+
Lalu kita isi t_user dengan sebagian tabel dari t_parkir
mysql>
insert into t_user(no_plat, merk_kend) select plat_no,
merk from t_parkir;
Query OK, 5 rows affected
(0.05 sec)
Records: 5 Duplicates: 0
Warnings: 0
mysql> select*from
t_user;
+------------+-----------+
| no_plat | merk_kend |
+------------+-----------+
| AB-1234-OP | TOYOTA |
| B-3454-SDE | BMW |
| AB-5555-UX | HONDA |
| BH-36-B | SUZUKI
|
| N-7876-OK | KIA
|
+------------+-----------+
5 rows in set (0.00 sec)
10.
Mengubah
data menggunakan UPDATE
Mengubah data dalam suatu
tabel bisa dilakukan juga tanpa menggunakan perintah ALTER TABLE yaitu
menggunakan perintah UPDATE, contohnya
mysql>
update t_user set
merk_kend='NISSAN' where no_plat='B-3454-SDE';
Query OK, 1 row affected (0.09
sec)
Rows matched: 1 Changed: 1
Warnings: 0
mysql> select*from
t_user;
+------------+-----------+
| no_plat | merk_kend |
+------------+-----------+
| AB-1234-OP | TOYOTA |
| B-3454-SDE | NISSAN |
| AB-5555-UX | HONDA |
| BH-36-B | SUZUKI
|
| N-7876-OK | KIA
|
+------------+-----------+
5 rows in set (0.00 sec)
11. Mengganti data dari tabel
Kali ini cara mengganti data tabel tapi menggunakan perintah
REPLACE, yang membedakan perintah ini dengan yang lain adalah, jika REPLACE
digunakan pada tabel yang memiliki PRIMARY KEY atau nilai UNIQUE
Contoh :
mysql> replace into
t_parkir( id_parkir, plat_no , merk) values
('11104','BH-36-B','ISUZU');
Query
OK, 2 rows affected (0.03 sec)
mysql>
select*from t_parkir;
+-----------+------------+--------+
|
id_parkir | plat_no | merk |
+-----------+------------+--------+
|
11101 | AB-1234-OP | TOYOTA |
|
11102 | B-3454-SDE | BMW |
|
11103 | AB-5555-UX | HONDA |
|
11104 | BH-36-B | ISUZU
|
|
11105 | N-7876-OK | KIA
|
+-----------+------------+--------+
5
rows in set (0.00 sec)
12.
Menghapus
data dari tabel
Menghapus data dalam basisdata
bisa menggunakan perintah DELETE,
Contoh :
mysql>
delete from t_parkir where
id_parkir='11105';
Query OK, 1 row affected
(0.16 sec)
mysql> select*from
t_parkir;
+-----------+------------+--------+
| id_parkir |
plat_no | merk |
+-----------+------------+--------+
| 11101 | AB-1234-OP | TOYOTA |
| 11102 | B-3454-SDE | BMW |
| 11103 | AB-5555-UX | HONDA |
| 11104 | BH-36-B | ISUZU
|
+-----------+------------+--------+
4 rows in set (0.00 sec)
0 comments:
Post a Comment