Query UPDATE digunakan untuk melakukan perubahan data pada tabel MySQL (update baris/record). Format dasar Query UPDATE :
UPDATE nama_tabel SET nama_kolom = data_baru WHERE kondisi
Keterangan:
- nama_tabel adalah nama dari tabel yang barisnya akan diperbaharui (update)
- nama_kolom adalah nama kolom pada database dari tabel yang akan diperbaharui
- data_baru adalah isi data yang akan diinput sebagai data baru pada kolom yang akan diperbaharui
- kondisi adalah kondisi atau syarat dari baris yang akan diubah
Contoh:
Tabel Siswa
NamaTanggal LahirAsal SekolahRani23 Januari 2000SDN 5 BojongJuna28 Februari 2001SDN Suka MakmurBimbo1 Agustus 2001SDN Suka Makmur
Saya ingin mengubah data asal sekolah atas nama Juna yang tadinya sekolah di SDN Suka Makmur akan diubah menjadi asal sekolah di SDN Baru Berkembang. Maka query UPDATEnya adalah :
Mengubah nama kolom dalam MySQL versi ini masih harus menggunakan definisi kolom secara penuh.
Sintaks:
ALTER TABLE namatabel CHANGE nama_lama nama_baru <definisi kolom>;
Contoh:
Kita akan mengubah categorycode menjadi category_code pada tblCategory di bawah ini.
ALTER TABLE tblCategory CHANGE categorycode category_code INT;
Hasilnya:
Pada versi ini kita benar-benar harus menyertakan definisi kolom jika tidak ingin atribut kolom tersebut berubah jadi setting default. Seperti misalnya, jika kita didak menyertakan NOT NULL pada query maka secara default kolom akan menjadi NULL.
Versi MySQL 8.0
Mengubah nama kolom di MySQL versi 8.0 bisa menggunakan sintaks diatas, juga bisa menggunakan sintaks yang lebih sederhana.
Sintaks:
ALTER TABLE namatabel RENAME COLUMN namalama TO namabaru;
Contoh:
Kita akan mengubah categoryname menjadi category_name pada tblCategory di bawah ini.
ALTER TABLE tblcategory RENAME COLUMN categoryname TO category_name;
Hasilnya:
Cara ini jauh lebih mudah karena jika kita hanya perlu mengubah nama saja, tidak perlu menyertakan atribut kolom lainnya. Kecuali jika kita ingin sekalian mengubah attribut kita dapat menggunakan ALTER TABLE ... CHANGE dengan 1 query.
Jika Anda sudah membuat database MySQL Anda, dan Anda memutuskan setelah fakta bahwa salah satu kolom bernama salah, Anda tidak perlu menghapusnya dan menambahkan pengganti; Anda cukup mengganti namanya.
Mengganti Nama Kolom Basis Data
Anda mengganti nama kolom di MySQL menggunakan ALTER TABLE dan CHANGE perintah bersama untuk mengubah kolom yang ada. Misalnya, sebutkan kolom saat ini bernama Soda , tetapi Anda memutuskan bahwa Minuman adalah judul yang lebih tepat.
Kolom ini terletak di meja yang berjudul Menu . Berikut ini contoh cara mengubahnya:
Dalam bentuk generik, di mana Anda mengganti istilah Anda, ini adalah:
ALTER TABLE tablename CHANGE oldname newname varchar (10);Tentang VARCHAR
VARCHAR (10) dalam contoh dapat berubah menjadi sesuai untuk kolom Anda. VARCHAR adalah string karakter dengan panjang variabel. Panjang maksimum — dalam contoh ini adalah 10 — menunjukkan jumlah karakter maksimum yang ingin Anda simpan di kolom. VARCHAR (25) bisa menyimpan hingga 25 karakter.
Penggunaan Lainnya untuk ALTER TABLE
Perintah ALTER TABLE juga dapat digunakan untuk menambahkan kolom baru ke tabel atau untuk menghapus seluruh kolom dan semua datanya dari tabel. Misalnya, untuk menambahkan penggunaan kolom:
Misalnya saja saya sudah terlanjur membuat sebuah tabel database MySQL, tetapi karena suatu hal saya ingin mengganti salah satau nama kolom yang telah saya buat. Bagaimana caranya? Berikut tutorialnya:
Pertama saya harus masuk dulu ke dalam database MySQL (disini saya menggunakan user root, anda boleh menggunakan user apa saja asalkan dapat mengelola database yang akan anda tuju) menggunakan perintah:
mysql -u root -p
setelah memasukkan password dan otentikasi berhasil, saya akan masuk ke dalam shell MySQL. Kemudian saya akan memilih database yang akan saya kelolayaitu database belajar dengan menjalankan perintah:
use belajar;
kemudian tabel database yang akan saya ubah nama kolomnya adalah tabel profile, maka saya harus melihat dulu strukur tabel yang akan saya ubah dengan menjalankan perintah:
DESCRIBE profile;
maka hasilnya seperti yang terlihat di bawah ini:
kemudian, saya berencana akan mengubah nama kolom email menjadi alamat, maka format perintah yang akan saya jalankan terlihat seperti di bawah ini:
ALTER TABLE profile CHANGE COLUMN (nama_column_lama) (nama_column_baru) (tipe_data_column_lama);
Perlu anda ketahui juga bahwa ketika melakukan perubahan nama kolom anda juga harus menyertakan tipe data kolum yang akan anda ubah,
Berdasarkan perintah DESCRIBE profile, saya mengetahui bahwa tipe data kolom email adalah VARCHAR (50) dan bersifat NOT NULL (karena pada kolom NULL berisi nilai NO).