Manajemen Tabel Di MySQL Bagian 2

0
Pada tutorial Manajemen Tabel di MySQL Bagian 2 ini, akan di bahas lebih mendalam namun pada tentang:

  • Cara Memberikan Komentar Pada Tabel
  • Cara Memberikan Komentar Pada Kolom
  • Cara Mengubah Nama Tabel
  • Cara Menambahkan Kolom Pada Tabel
  • Cara Menghapus Kolom Pada Tabel
  • Cara Mengganti Tipe Data Pada Tabel

Cara Memberikan Komentar Pada Tabel


Untuk memberikan komentar pada sebuah tabel, Anda dapat menggunakan perintah Alter Table...Comment seperti sintak berikut ini:

ALTER TABLE nama_tabel COMMENT 'isi komentar';

Contoh:

Sebagai contoh, kita tampilkan terlebih dahulu daftar tabel yang terdapat di database Anda. Pada tutorial ini saya menggunakan database "simpeg".

mysql> SHOW TABLES;
+------------------+
| Tables_in_simpeg |
+------------------+
| departemen       |
| pegawai          |
+------------------+
2 rows in set (0.00 sec)

Dari kedua tabel diatas, tambahkan komentar "Tabel untuk menyimpan data pegawai" untuk tabel pegawai dan "Tabel untuk menyimpan data departemen" untuk tabel departemen. Silakan Anda jalankan perintah berikut ini untuk menambahkanyya:

mysql> ALTER TABLE pegawai COMMENT 'Tabel untuk menyimpan data pegawai';
Query OK, 0 rows affected (0.14 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> ALTER TABLE departemen COMMENT 'Tabel untuk menyimpan data departemen';
Query OK, 0 rows affected (0.14 sec)
Records: 0  Duplicates: 0  Warnings: 0

Untuk menampilkan komentar yang terdapat pada tabel pada sebuah database, Anda dapat menggunakan query sebagai berikut:

mysql> SELECT table_name, table_comment
    -> FROM information_schema.tables
    -> WHERE table_schema = 'simpeg';
+------------+---------------------------------------+
| table_name | table_comment                         |
+------------+---------------------------------------+
| departemen | Tabel untuk menyimpan data departemen |
| pegawai    | Tabel untuk menyimpan data pegawai    |
+------------+---------------------------------------+
2 rows in set (0.00 sec)

Dimana isi dari table_schema adalah nama database yang akan dicari.

Disamping menggunakan perintah Alter Table seperti diatas, Anda juga dapat menambahkan komentar pada tabel, langsung sewaktu Anda membuat tabel pertama kali. Untuk lebih jelasnya, perhatikan contoh berikut ini:

mysql> CREATE TABLE tbl_test(
    -> kol1 int(10)
    -> ) COMMENT 'Ini sebuah tabel dummy';
Query OK, 0 rows affected (0.13 sec)

Cara Menambahkan Komentar Pada Kolom


Ada dua cara untuk menambahkan komentar pada kolom, yaitu:

  1. Menggunakan perintah Alter Table
  2. Menggunakan perintah Create Table sewaktu membuat tabel

1. Menggunakan perintah Alter Table


Anda dapat menambahkan komentar di kolom pada sebuah tabel, dengan menggunakan perintah Alter Table seperti sintak berikut ini:

ALTER TABLE nama_tabel
MODIFY COLUMN nama_kolom tipe_data COMMENT 'isi komentar';

Sebagai contoh, misalkan kita ingin menambahkan komentar 'diisi dengan L atau P' pada kolom jenis_kelamin pada tabel pegawai, maka Anda dapat menjalankan perintah berikut ini:

mysql> ALTER TABLE pegawai
    -> MODIFY jenis_kelamin CHAR(1) COMMENT 'diisi dengan L atau P';
Query OK, 0 rows affected (3.68 sec)
Records: 0  Duplicates: 0  Warnings: 0

Untuk menampilkan daftar konemtar yang terdapat pada tabel di sebuah database, maka Anda dapat menggunakan query berikut ini:

mysql> SELECT table_name, column_name, column_comment
    -> FROM information_schema.columns
    -> WHERE table_schema =  'simpeg';
+------------+-----------------+-----------------------+
| table_name | column_name     | column_comment        |
+------------+-----------------+-----------------------+
| departemen | id_departemen   |                       |
| departemen | nama_departemen |                       |
| pegawai    | id_pegawai      |                       |
| pegawai    | nama_lengkap    |                       |
| pegawai    | jenis_kelamin   | diisi dengan L atau P |
| pegawai    | alamat          |                       |
| pegawai    | umur            |                       |
| pegawai    | gaji            |                       |
| pegawai    | departemen      |                       |
| tbl_test   | kol1            |                       |
+------------+-----------------+-----------------------+
10 rows in set (0.04 sec)

2. Menggunakan perintah Create Table


Selain menggunakan perintah Alter Table seperti point nomer satu diatas, Anda juga dapat menambahkan kolom secara langsung bersamaan Anda membuat tabel.

Perhatikan contoh sederhana berikut ini:

mysql> CREATE TABLE product(
    -> product_id VARCHAR(10) NOT NULL COMMENT 'Diisi dengan data product ID',
    -> product_name VARCHAR(30) NOT NULL COMMENT 'Diisi dengan data product Name'
    -> );

Pada contoh diatas, kita akan membuat sebuah tabel dengan nama "product" yang memiliki dua buah kolom, yaitu "product_id" dan "product_name" yang ditambahkan komentar pada kedua nya.

Mengubah Nama Tabel


Untuk mengubah nama sebuah tabel, Anda dapat dapat menggunakan perintah RENAME TABLE seperti sintak berikut ini:

RENAME TABLE nama_tabel_lama TO nama_tabel_baru;

Contoh

Sebagai contoh misalkan Anda telah memiliki sebuah tabel "product" dan ingin mengubah namanya menjadi "produk", maka Anda dapat menjalankan perintah berikut ini:

mysql> RENAME TABLE product TO produk;
Query OK, 0 rows affected (0.07 sec)

Menambahkan Kolom Pada Tabel


Untuk menambahkan kolom pada tabel, Anda dapat menggunakan perintah Alter Table Add Column seperti sintak berikut ini:

ALTER TABLE nama_tabel
ADD [COLUMN] nama_kolom_baru tipe_date [FIRST|AFTER nama_kolom_lama];

Penjelasan sintak diatas, kurang lebih sebagai berikut:

  • nama_tabel adalah tabel yang akan ditambahkan kolom
  • nama_kolom_baru adalah kolom baru yang akan ditambahkan.
  • FIRST adalah parameter tambahan, agar posisi kolom baru berada di urutan pertama.
  • AFTER adalah parameter tambahan, agar posisi kolom baru berada setelah kolom yang ditentukan.
Contoh,

Misalkan Anda telah memiliki sebuah tabel "pegawai" dengan struktur sebagai berikut:

mysql> DESC pegawai;
+---------------+---------------+------+-----+---------+-------+
| Field         | Type          | Null | Key | Default | Extra |
+---------------+---------------+------+-----+---------+-------+
| id_pegawai    | varchar(5)    | NO   | PRI | NULL    |       |
| nama_lengkap  | varchar(30)   | NO   |     | NULL    |       |
| jenis_kelamin | char(1)       | YES  |     | NULL    |       |
| alamat        | varchar(30)   | NO   |     | NULL    |       |
| umur          | int(3)        | YES  |     | 0       |       |
| gaji          | decimal(10,0) | YES  |     | NULL    |       |
| departemen    | varchar(5)    | YES  |     | NULL    |       |
+---------------+---------------+------+-----+---------+-------+
7 rows in set (0.17 sec)

Misalkan Anda ingin menambahkan beberapa kolom pada tabel diatas, yaitu:

  • kolom tgl_join dengan tipe data DATE pada posisi setelah nama_lengkap.
    mysql> ALTER TABLE pegawai
        -> ADD COLUMN tgl_join DATE AFTER nama_lengkap;
    Query OK, 10 rows affected (0.55 sec)
    Records: 10  Duplicates: 0  Warnings: 0
    
    
  • kolom pendidikan_terakhir dengan tipe data VARCHAR(20) pada posisi terakhir.
    mysql> ALTER TABLE pegawai
        -> ADD COLUMN pendidikan_terakhir VARCHAR(20);
    Query OK, 10 rows affected (0.42 sec)
    Records: 10  Duplicates: 0  Warnings: 0
    
    
  • kolim no_ktp dengan tipe data VARCHAR(20) berada pada posisi pertama.
    mysql> ALTER TABLE pegawai
        -> ADD COLUMN no_ktp VARCHAR(20) FIRST;
    Query OK, 10 rows affected (0.27 sec)
    Records: 10  Duplicates: 0  Warnings: 0
    
Untuk membuktikan apakah perintah diatas sudah benar atau belum, Anda dapat menggunakan perintah DESC seperti berikut ini:

mysql> DESC pegawai;
+---------------------+---------------+------+-----+---------+-------+
| Field               | Type          | Null | Key | Default | Extra |
+---------------------+---------------+------+-----+---------+-------+
| no_ktp              | varchar(20)   | YES  |     | NULL    |       |
| id_pegawai          | varchar(5)    | NO   | PRI | NULL    |       |
| nama_lengkap        | varchar(30)   | NO   |     | NULL    |       |
| tgl_join            | date          | YES  |     | NULL    |       |
| jenis_kelamin       | char(1)       | YES  |     | NULL    |       |
| alamat              | varchar(30)   | NO   |     | NULL    |       |
| umur                | int(3)        | YES  |     | 0       |       |
| gaji                | decimal(10,0) | YES  |     | NULL    |       |
| departemen          | varchar(5)    | YES  |     | NULL    |       |
| pendidikan_terakhir | varchar(20)   | YES  |     | NULL    |       |
+---------------------+---------------+------+-----+---------+-------+
10 rows in set (0.00 sec)

Mengganti Tipe Data Pada Tabel


Untuk mengganti tipe data pada kolom di sebuah tabel, Anda dapat menggunakan perintah Alter Table Modify Column seperti sintak berikut ini:

ALTER TABLE nama_tabel
MODIFY COLUMN nama_kolom tipe_data_baru [NOT NULL] [AUTO_INCREMENT];

Contoh, misalkan Anda memiliki sebuah tabel "pegawai" dengan struktur sebagai berikut:

mysql> DESC pegawai;
+---------------------+---------------+------+-----+---------+-------+
| Field               | Type          | Null | Key | Default | Extra |
+---------------------+---------------+------+-----+---------+-------+
| no_ktp              | varchar(20)   | YES  |     | NULL    |       |
| id_pegawai          | varchar(5)    | NO   | PRI | NULL    |       |
| nama_lengkap        | varchar(30)   | NO   |     | NULL    |       |
| tgl_join            | date          | YES  |     | NULL    |       |
| jenis_kelamin       | char(1)       | YES  |     | NULL    |       |
| alamat              | varchar(30)   | NO   |     | NULL    |       |
| umur                | int(3)        | YES  |     | 0       |       |
| gaji                | decimal(10,0) | YES  |     | NULL    |       |
| departemen          | varchar(5)    | YES  |     | NULL    |       |
| pendidikan_terakhir | varchar(20)   | YES  |     | NULL    |       |
+---------------------+---------------+------+-----+---------+-------+
10 rows in set (0.00 sec)

Misalkan Anda ingin mengubah tipe data pada kolom pendidikan_terakhir menjadi VARCHAR(30), maka Anda dapat menjalankan perintah berikut ini:

mysql> ALTER TABLE pegawai
    -> MODIFY COLUMN pendidikan_terakhir VARCHAR(30);
Query OK, 10 rows affected (0.48 sec)
Records: 10  Duplicates: 0  Warnings: 0

Atau Anda ingin mengubah tipe data kolom umur menjadi INT(5), maka Anda dapat menjalankan perintah berikut ini:

mysql> ALTER TABLE pegawai
    -> MODIFY COLUMN umur INT(5);
Query OK, 0 rows affected (0.06 sec)
Records: 0  Duplicates: 0  Warnings: 0

Untuk membuktikan apakah tipe data kedua kolom diatas sudah berubah atau belum, Anda dapat menampilkan kembali struktur tabel pegawai diatas:

mysql> DESC pegawai;
+---------------------+---------------+------+-----+---------+-------+
| Field               | Type          | Null | Key | Default | Extra |
+---------------------+---------------+------+-----+---------+-------+
| no_ktp              | varchar(20)   | YES  |     | NULL    |       |
| id_pegawai          | varchar(5)    | NO   | PRI | NULL    |       |
| nama_lengkap        | varchar(30)   | NO   |     | NULL    |       |
| tgl_join            | date          | YES  |     | NULL    |       |
| jenis_kelamin       | char(1)       | YES  |     | NULL    |       |
| alamat              | varchar(30)   | NO   |     | NULL    |       |
| umur                | int(5)        | YES  |     | NULL    |       |
| gaji                | decimal(10,0) | YES  |     | NULL    |       |
| departemen          | varchar(5)    | YES  |     | NULL    |       |
| pendidikan_terakhir | varchar(30)   | YES  |     | NULL    |       |
+---------------------+---------------+------+-----+---------+-------+
10 rows in set (0.00 sec)

Sudah berubah bukan??

Berlanjut ke bagian 3..


0 Comments