Terkadang Anda mungkin perlu mengubah nama kolom di MySQL atau mengganti nama kolom tanpa mengubah jenisnya. Berikut cara mengganti nama kolom di query MySQL.
Cara Mengubah Nama Kolom di MySQL
Berikut adalah langkah-langkah untuk mengubah nama kolom pada query MySQL menggunakan statement MySQL ALTER TABLE.
Ganti Nama Kolom di MySQL 5.6.x dan 5.7.x
Berikut query SQL untuk mengganti nama kolom di MySQL.
ALTER TABLE table_name CHANGE old_column_name new_column_name <column definition>;
Dalam kueri di atas, Anda perlu menyebutkan nama_tabel setelah ALTER TABLE, nama_kolom_lama dan nama_kolom_baru setelah kata kunci CHANGE. Anda juga perlu menyebutkan seluruh definisi kolom dari kolom Anda, meskipun tidak ada perubahan di dalamnya. Jika tidak, MySQL akan mengubah atribut yang tidak dideklarasikan ke nilai default.
Misalnya, jika Anda memiliki batasan NOT NULL pada kolom MySQL Anda tetapi tidak menyebutkannya saat mengganti nama kolom, maka MySQL akan menghapus batasan tersebut dan mengizinkan nilai null untuk kolom tersebut, setelah mengganti namanya.
Bonus Baca :Prosedur Tersimpan MySQL dengan Parameter
Berikut ini contoh kolom rename. Katakanlah Anda memiliki tabel berikut pesanan
mysql> describe orders; +--------------+--------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+-------------------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | product_name | varchar(255) | NO | | NULL | | | order_date | date | YES | | NULL | | | price | int(11) | NO | | NULL | | | description | text | YES | | NULL | | | created_at | timestamp | NO | | CURRENT_TIMESTAMP | | +--------------+--------------+------+-----+-------------------+----------------+ mysql> alter table orders change price item_price int(11); mysql> describe orders; +--------------+--------------+------+-----+-------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+--------------+------+-----+-------------------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | product_name | varchar(255) | NO | | NULL | | | order_date | date | YES | | NULL | | | item_price | int(11) | YES | | NULL | | | description | text | YES | | NULL | | | created_at | timestamp | NO | | CURRENT_TIMESTAMP | | +--------------+--------------+------+-----+-------------------+----------------+
Bonus Baca :Cara Duplikat Tabel di MySQL
Ganti Nama Kolom di MySQL 8.0
Sejak MySQL 8.0, ada cara lain yang lebih mudah untuk mengganti nama kolom tanpa mengubah jenis (tanpa menentukan seluruh definisi kolom) menggunakan klausa RENAME COLUMN.
ALTER TABLE products RENAME COLUMN product_name TO product_full_name;
Ubiq memudahkan untuk memvisualisasikan data dalam hitungan menit, dan memantau di dasbor waktu nyata. Cobalah Hari ini!