Cara menambah dan Menghapus Primary Key MySQL Database

Key pada database mysql berguna untuk mengidentifikasi record secara unik yang artinya tiap baris record tidak boleh memiliki duplikasi data, mengapa demikian? Hal ini bertujuan agar ketika data yang disimpan sudah cukup besar dan kemudian melakukan pencarian data maka data yang dicari akan ditelusuri berdasarkan baris demi baris sehingga dapat memakan waktu, maka primary key menjadi jawabannya untuk mengatasi hal tersebut sehingga mempercepat pencarian data. Lalu, bagaimana cara menambahkan / menghapus primary di database mysql? Berikut caranya:
Create table
Cara pertama adalah pada saat membuat tabel kita bisa langsung menambahkan primary key pada tabel, format dan caranya sebagai berikut:
Format:
create table nama_tabel (nama_kolom tipe_data(length) primary key, kolomN tipe_data(length)....);
create table nama_tabel (nama_kolom tipe_data(length), kolomN tipe_data(length)..., primary key (nama_kolom));
create table nama_tabel (nama_kolom tipe_data(length), kolomN tipe_data(length)..., constraint nama_constraint primary key (nama_kolom));
Contoh:
mysql> create table utama (kolom_1 int primary key, kolom_2 varchar(45));
Query OK, 0 rows affected (0.12 sec)

mysql> create table utama (kolom_1 int, kolom_2 varchar(45), primary key (kolom_1));
Query OK, 0 rows affected (0.14 sec)

mysql> create table utama (kolom_1 int, kolom_2 varchar(45), constraint pk_kolom_1 primary key (kolom_1));
Query OK, 0 rows affected (0.06 sec)

Kita dapat menggunakan salah satu dari ketiga cara diatas. Jika primary key dijadikan sebagai nomor urut, sangat disarankan pada kolom yang dijadikan primary key untuk menggunakan tipe data integer dan tambahkan atribut auto_increment sehingga melakukan pertambahan nilai dengan sendirinya. Untuk mempersingkat, berikut karakteristik primary key:
  • Field dengan primary key tidak boleh kosong (null) dan secara otomatis akan di set sebagai not null
  • Mengidentifikasi baris (row) secara unique
  • Tidak dapat menggunakan tipe data text / blob untuk dijadikan sebagai primary key
  • Menghasilkan CLUSTER unique index secara default
Alter Table
Selain dengan create table, kita juga dapat menambah primary key dengan alter table yang mana mungkin pada saat mendefinisikan tabel, anda lupa untuk menambahkan primary key. Berikut adalah format dan caranya:
Format:
alter table nama_tabel add primary key (nama_kolom);
alter table nama_tabel add constaint nama_constraint primary key (nama_kolom);
Contoh:
mysql> alter table utama add primary key (kolom_1);
Query OK, 0 rows affected (0.23 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> alter table utama add constraint pk_kolom_1 primary key (kolom_1);
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0
Walaupun saat menambahkan primary key dapat memberikan nama constraint namun mysql mengabaikan nama constraint untuk primary key, hal ini dapat diperiksa dengan menjalankan perintah show create table nama_tabel.

Menghapus Primary Key
Untuk menghapus primary key hanya dapat dilakukan dengan perintah alter table, format dan contohnya sebagai berikut:
Format:
alter table nama_tabel drop primary key (nama_kolom);
Contoh:
mysql> alter table utama drop primary key;
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

Dikarenakan mysql mengabaikan nama constraint untuk primary key maka untuk menghapus primary key bisa langsung dengan menjalankan drop primary key, selain itu, jika tabel memiliki relasi maka tabel child harus menghapus foreign keynya terlebih dahulu sehingga dapat menghapus primary key pada tabel parent.
Bayu Radityo

Seorang lulusan teknik informatika yang senang dalam berbagi ilmu pengetahuan, dan membuat karya digital berupa photomanipulation dan digital drawing. instagram external-link

Posting Komentar

Lebih baru Lebih lama