MariaDB: DROP TABLE - Menghapus Tabel
Untuk menghapus table Dalam sebuah Database MariaDB atau MySQL, gunakan perintah
DROP TABLE
diikuti dengan nama table (bisa lebih dari satu). Contoh DROP TABLE namatable1, namatabel2
.Syntax
DROP [TEMPORARY] TABLE [IF EXISTS] [/*COMMENT TO SAVE*/]
tbl_name [, tbl_name] ...
[RESTRICT | CASCADE]
Penjelasan
DROP TABLE
secara sederhana diartikan dengan HAPUS TABEL, digunakan untuk menghapus tabel dalam sebuah database. Perintah ini akan menghapus seluruh data (kolom-kolom) berikut definisi yang ada dalam table tersebut. Perlu diketahui, perintah ini bukan mengkosongkan table (menghapus kolom-kolomnya saja) tetapi juga nama table dan seluruh konten didalamnya. Oleh karenanya, berhati-hatilah dalam menjalankan perintah ini.DROP TABLE
hanya dapat dijalankan pada orang (user) yang memiliki hak akses DROP privilege. Untuk table yang dibuat secara sementara (temporary) maka tidak ada hak akses karena table tersebut hanya berlaku pada sesi yang sedang berlangsung.Contoh
Pada contoh dibawah ini, saya ingin menghapus table "siswa_sementara" dalam sebuah database "dbcontohsekolah".
DROP TABLE siswa_sementara;
Atau bisa kita tulis seperti ini:
DROP TABLE dbcontohsekolah.siswa_sementara
Perlu diperhatikan sekali lagi, perintah
DROP TABLE
ini sangat berbahaya, karena menyangkut data yang hendak dihapus. Jika data dalam table tersebut begitu penting, ada baiknya backup terlebih dahulu sebelum menjalankan perintah ini. Jika dalam sistem administrasi Anda terdapat banyak orang (multi user) dan ada yang memiliki hak akses DROP TABLE pastikan bahwa orang tersebut benar-benar bisa dipercaya.DROP TABLE IF EXISTS
DROP TABLE IF EXISTS siswa_sementara;
Hapus Table Jika Ada
DROP TABLE IF EXISTS
artinya, HAPUS TABEL JIKA ada. Jadi, perintah ini hanya akan menghapus table jika memang ada, jika tidak ada maka perintah akan diabaikan. Tambahan IF EXISTS
hanya opsional, boleh ditulis atau tidak akan tetapi lebih baik ditulis untuk menghindari errror. Jika perintah hapus tabel ditulis tanpa IF EXISTS
maka jika table yang hendak dihapus tersebut ternyata tidak ada, maka akan terjadi error tapi sebaliknya jika ditulis dengan IF EXISTS
maka hanya berisi peringatan.
Ketika sebuah table dihapus, maka user privileges (hak akses user) untuk table tersebut tidak ikut dihapus.
Jika ada koneksi lain yang menggunakan table yang hendak dihapus ini, maka metadata lock akan aktif dan perintah hapus table tidak akan dijalankan (menunggu) sampai lock tersebut dilepas (tidak digunakan). Juga berlaku untuk table non-transaksi (non-transactional).
Jika ada sebuah foreign key pada table lain yang mereferensikan table yang hendak dihapus ini, maka table tidak dapat dihapus sebelum foreign key dalam tabel lain tersebut dihapus terlebih dahulu.
Contoh Praktek HAPUS TABEL (DROP TABLE)
Contoh dapat dipraktekkan pada database MySQL atau MariaDB. Untuk memudahkan pemahaman Anda dan agar benar-benar mengerti bagaimana menggunakan
DROP TABLE
ini, mari kita praktekkan contoh sederhana dibawah ini secara langkah demi langkah:- Buat Database baru, jalankan perintah
CREATE DATABASE dbcontohsekolah;
. Kira-kira hasilnya seperti ini:
Disini, saya membuat database dengan nama "dbcontohsekolah"MariaDB [belajar1]> CREATE DATABASE dbcontohsekolah; Query OK, 1 row affected (0.05 sec)
- Gunakan database "dbcontohsekolah" dengan menjalankan perintah
USE dbcontohsekolah;
- Buat Table, jalankan perintah berikut:
Kira-kira hasilnya seperti ini:CREATE TABLE siswa_sementara ( id int AUTO_INCREMENT PRIMARY KEY, nama varchar(50) NOT NULL );
MariaDB [dbcontohsekolah]> CREATE TABLE siswa_sementara ( -> id int AUTO_INCREMENT PRIMARY KEY, -> nama varchar(50) NOT NULL -> ); Query OK, 0 rows affected (0.71 sec)
- Lihat table apa saja yang ada dalam database yang telah kita buat pada no.1 diatas dengan menjalankan perintah:
SHOW TABLES;
Kira-kira tampilannya seperti ini:
Hasil diatas menunjukkan bahwa kita hanya memiliki satu table yaitu siswa_sementara.MariaDB [dbcontohsekolah]> SHOW TABLES; +---------------------------+ | Tables_in_dbcontohsekolah | +---------------------------+ | siswa_sementara | +---------------------------+ 1 row in set (0.00 sec)
- Sekarang coba kita hapus table siswa_sementara yang telah dibuat tersebut dengan menjalankan perintah berikut:
Kemudian kita jalankan lagi perintahDROP TABLE IF EXISTS siswa_sementara;
Maka, hasilnya sebagai berikut:SHOW TABLES;
MariaDB [dbcontohsekolah]> SHOW TABLES; Empty set (0.00 sec)
Empty
menunjukkan Kosong, artinya tidak ada satu tabel pun dalam database tersebut. Ini menunjukkan perintah Hapus table tersebut telah berhasil dijalankan.
Tidak ada komentar:
Posting Komentar