Cara mengubah tipe data kolom tabel MySQL existing di terminal


Apabila sebelumnya saya menuliskan cara mengubah nama kolom, sekarang saya akan menuliskan cara mengubah tipe data pada suatu kolom di tabel database MySQL yang sudah terlanjur dibuat. Sebelum perlu anda ketahui bahwa ketika mengubah tipe data suatu kolom, pastikan bahwa data di dalam kolom tersebut tidak bertentangan dengan tipe data yang akan diubah.

Bertentangan seperti apa yang saya maksud? Berikut contohnya:

Misalnya saja ada kolom gender dengan tipe data CHAR(1) dan di dalam kolom tersebut sudah tersimpan data gender yang terdiri dari  karakter P yang mewakili pria dan W yang mewakili wanita.

Lalu tiba-tba saja anda mencoba mengubah tipe data kolom gender tersebut dari CHAR(1) menjadi BOOLEAN(1), dimana tipe data BOOLEAN hanya terdiri dari 1 dan 0.

dan hasilnya adalah database MySQL akan menampilkan pesan error bahwa perubahan tipe data tidak dapat dilakukan.

Akan tetapi, lain halnya jika di dalam kolom tersebut belum terdapat data apapun, maka perubahan seperti diatas dapat dilakukan.

Nha berikut tutorial untuk mengubah tipe data yang saya maksud. Pertama saya ingin tahu terlebih dahulu struktur data salah satu kolom pada tabel yang akan saya ubah yaitu tabel profile dengan menjalankan perintah berikut:

 DESCRIBE profle;

hasilnya terlihat seperti di bawah ini:


kemudian saya juga ingin melihat terlebih dahulu apakah di dalam tabel profile tersebut sudah tersimpan data, dengan menjalankan perintah berikut:

 SELECT * FROM profile;

maka hasilnya terlihat seperti di bawah ini:


dari gambar di atas terlihat bahwa di dalam tabel profile belum tersimpan data apapun, maka yang akan saya lakukn adalah mengubah tipe data kolom alamat  yang tadinya VARCHAR(50) menjadi tipe data TEXT dengan menjalankan perintah:

 ALTER TABLE profile 
 CHANGE COLUMN alamat alamat 
 TEXT NOT NULL;

jika proses perubahan tipe data berhasil dilakukan maka perintah tersebut akan memiliki output seperti di bawah ini:


jika saya melihat ulang lagi struktur data tabel profile dengan perintah:

 DESCRIBE profle;

maka hasilnya terlihat seperti di bawah:


anda bisa melihat bahwa tipe data kolom alamat yang tadinya VARCHAR dengan panjang 50 menjadi tipe data TEXT. Mudah bukan? Selamat mencoba ya

Comments