Anda di halaman 1dari 3

Ada saatnya dimana kita harus mengganti struktur table yang pernah kita buat.

Untungnya MySql mendukung/menyediakan perintah untuk melakukan kegiatan


tersebut. Perintahnya adalah ALTER TABLE. Penggunaanya sedikit sulit. Mudah-
mudahan penjelasan saya bisa menambah pemahaman supaya lebih mudah
untuk dipelajari. Bentuk umum perintahnya adalah sebagai berikut :

ALTER TABLE nama_tabel alter_options;

dimana :
 ALTER TABLE merupakan perintah dasar untuk mengubah tabel.
 nama_tabel merupakan nama tabel yang akan diubah strukturnya.
 alter_options merupakan pilihan perubahan tabel. Contoh Option yang bisa
digunakan adalah sebagai berikut:

Nama Option Fungsi Option


ADD nama_field/kolom_baru untuk menambahkan field/kolom baru.
ADD PRIMARY KEY (nama_field/kolom) untuk menambahkan primary key pada tabel
untuk mengubah nama_field_lama menjadi
CHANGE nama_field_lama
nama_field_baru_definisi_field_baru
nama_field_baru_definisi_field_baru
definisi_field_baru artinya adalah type data.
MODIFY nama_field type_data untuk mengubah type_data suatu field
DROP nama_field untuk menghapus field nama_field
RENAME TO nama_tabel_baru untuk mengganti nama tabel

 ALTER TABLE user ADD NIP VARCHAR(60);


Query tersebut akan menambah kolom NIP pada akhir table user,

ALTER TABLE info_dept ADD jabatan VARCHAR(20) not null;

 jika kita ingin menambah kolom NIP setelah kolom tertentu, misalnya kolom nama,
maka Querynya :
ALTER TABLE user ADD NIP VARCHAR(60) AFTER nama;

 Jika ingin diletakkan pada kolom pertama, maka cmd nya :


ALTER TABLE user ADD NIP VARCHAR(60) FIRST;

ALTER TABLE info_dept ADD id_info VARCHAR(10) not null PRIMARY KEY FIRST;
 Untuk menambah Primary Key pada table, perintahnya adalah:

ALTER TABLE nama_table ADD PRIMARY KEY (nama_kolom);

 Hapus Field/Kolom Bentuk perintahnya adalah sebagai berikut :

ALTER TABLE nama_tabel DROP COLUMN nama_kolom;

ALTER TABLE info_dept DROP id_info;

 Ubah Type Data Field/Kolom

alter table peserta modify jk enum('L','P') not null;

 Ubah kolom NIP menjadi primary key

alter table peserta add primary key (NIP);

 Seting kolom NIP menjadi auto_increment

alter table peserta modify NIP int(5) not null auto_increment;

 Ganti Nama Tabel

ALTER TABLE nama_table_lama RENAME TO nama_table_baru;

Cara Menambah Kolom / Field Baru


Untuk menambahkan kolom/field di pada tabel, MySQL menyedikan perintah
ALTER TABLE nama_tabel ADD nama_kolom varchar (50);

Penjelasan :
ALTER TABLE adalah perintah dasar untuk mengubah struktur tabel
nama_tabel adalah Nama dari tabel yang akan ditambahkan kolom
ADD adalah perintah untuk menambahkan
nama_kolom varchar (50); adalah Nama kolom baru yang berjumlah maximal 50 karakter

Contoh : saya akan menambahkan kolom pada tabel mahasiswa dengan nama kolom asal_sekolah
1 mysql> ALTER TABLE mahasiswa ADD asal_sekolah varchar (50);
2 Query OK, 0 rows affected (0.93 sec)
3 Records: 0 Duplicates: 0 Warnings: 0
*Kolom asal_sekolah sudah ditambah didalam tabel mahasiswa
cek strukturnya dengan memasukkan perintah

DESC Nama_tabel;
view source
print?
01 mysql> desc mahasiswa;
02 +----------------+---------------+------+-----+---------+-------+
03 | Field | Type | Null | Key | Default | Extra |
04 +----------------+---------------+------+-----+---------+-------+
05 | nim | varchar(20) | NO | PRI | | |
06 | nama_mahasiswa | varchar(50) | YES | | NULL | |
07 | jenis_kelamin | enum('L','P') | YES | | NULL | |
08 | alamat | varchar(50) | YES | | NULL | |
09 | asal_sekolah | varchar(50) | YES | | NULL | |
10 +----------------+---------------+------+-----+---------+-------+
11 5 rows in set (0.05 sec)
12
13 mysql>

ALTER DATABASE golf_db MODIFY NAME = golf_database