MariaDB - Ubah Perintah
Perintah ALTER menyediakan cara untuk mengubah struktur tabel yang sudah ada, yang berarti modifikasi seperti menghapus atau menambahkan kolom, mengubah indeks, mengubah tipe data, atau mengubah nama. ALTER juga menunggu untuk menerapkan perubahan ketika kunci metadata aktif.
Menggunakan ALTER untuk Memodifikasi Kolom
ALTER dipasangkan dengan DROP menghapus kolom yang ada. Namun, gagal jika kolom adalah satu-satunya kolom yang tersisa.
Tinjau contoh yang diberikan di bawah ini -
mysql> ALTER TABLE products_tbl DROP version_num;
Gunakan ALTER ... pernyataan ADD untuk menambahkan kolom -
mysql> ALTER TABLE products_tbl ADD discontinued CHAR(1);
Gunakan kata kunci PERTAMA dan SETELAH untuk menentukan penempatan kolom -
ALTER TABLE products_tbl ADD discontinued CHAR(1) FIRST;
ALTER TABLE products_tbl ADD discontinued CHAR(1) AFTER quantity;
Perhatikan kata kunci PERTAMA dan SETELAH hanya berlaku untuk ALTER ... pernyataan ADD. Selanjutnya, Anda harus menjatuhkan tabel dan kemudian menambahkannya untuk mengubah posisinya.
Ubah definisi kolom atau nama dengan menggunakan klausa MODIFY atau CHANGE dalam pernyataan ALTER. Klausa memiliki efek yang serupa, tetapi menggunakan sintaks yang sangat berbeda.
Tinjau contoh PERUBAHAN yang diberikan di bawah ini -
mysql> ALTER TABLE products_tbl CHANGE discontinued status CHAR(4);
Dalam pernyataan menggunakan CHANGE, tentukan kolom asli dan kemudian kolom baru yang akan menggantikannya. Tinjau contoh MODIFY di bawah -
mysql> ALTER TABLE products_tbl MODIFY discontinued CHAR(4);
Perintah ALTER juga memungkinkan untuk mengubah nilai default. Tinjau contoh -
mysql> ALTER TABLE products_tbl ALTER discontinued SET DEFAULT N;
Anda juga dapat menggunakannya untuk menghapus batasan default dengan memasangkannya dengan klausa DROP -
mysql> ALTER TABLE products_tbl ALTER discontinued DROP DEFAULT;
Menggunakan ALTER untuk Memodifikasi Tabel
Ubah tipe tabel dengan klausa TYPE -
mysql> ALTER TABLE products_tbl TYPE = INNODB;
Ubah nama tabel dengan kata kunci RENAME -
mysql> ALTER TABLE products_tbl RENAME TO products2016_tbl;