Mengubah dan Menghapus Tabel pada Apache Cassandra
Membuat tabel dan menambahkan datanya telah dibahas pada tulisan berjudul Membuat Tabel Cassandra Cassandra. Kali ini akan dibahas bagaimana:
• menampilkan informasi objek menggunakan pernyataan DESCRIBE
• mengubah tabel menggunakan pernyataan ALTER TABLE
• menghapus tabel menggunakan pernyataan DROP TABLE
Deskripsi Objek
Pernyataan DESCRIBE
(disingkat DESC
) menampilkan informasi terperinci objek dalam format CQL. Berikut adalah diagram sintaks berkaitan dengan deskripsi objek keyspace dan tabel.
Pada tulisan sebelumnya berjudul Membuat Tabel Cassandra, telah diberikan contoh bagaimana membuat tabel mahasiswa dalam keyspace akademik. Berikut adalah contoh penggunaan pernyataan DESCRIBE
untuk menampilkan:
(1) informasi keyspace yang ada, dalam hal ini hanya ada satu keyspace
(2) informasi keyspace akademik dan tabel mahasiswa yang ada di dalamnya.
Coba sendiri pernyataan DESCRIBE
berikut. Informasi apa yang ditampilkan?
DESCRIBE akademik;
DESCRIBE TABLES;
DESCRIBE TABLE akademik.mahasiswa;
DESCRIBE akademik.mahasiswa;
Bila keyspace akademik aktif, untuk menampilkan informasi tabel mahasiswa, cukup dengan pernyataan DESCRIBE TABLE mahasiswa
atau DESCRIBE mahasiswa
.
USE akademik;
DESCRIBE mahasiswa;
Mengubah Table
- Tabel diubah dengan menggunakan pernyataan
ALTER TABLE
. - Berikut adalah diagram sintaksnya.
Menambah Kolom
- Gunakan klausa
ADD
. - Operasi ini tidak memvalidasi data yang ada.
- Primary key tidak dapat diubah, dengan demikian kolom baru yang ditambahkan tidak dapat menjadi bagian dari primary key.
- Berikut contoh menambahkan dua kolom baru yakni kolom
JKELAMIN
dan kolomGOLDARAH
ke dalam tabel mahasiswa.
ALTER TABLE mahasiswa
ADD (jkelamin ascii, goldarah varchar);
Mengubah Nama Primary Key
- Gunakan klausa
RENAME
. - Primary key tidak dapat diubah, hanya namanya yang dapat diubah.
- Mengubah nama primary key
NIM
menjadiNPM
:
ALTER TABLE mahasiswa
RENAME nim TO npm;
Menghapus Kolom
- Gunakan klausa
DROP
. - Misalnya menghapus kolom goldarah dan ipk.
ALTER TABLE mahasiswa
DROP (goldarah, ipk);
Menghapus Table
- Tabel dihapus dengan menggunakan pernyataan
DROP TABLE
. - Berikut adalah diagram sintaksnya.
- Penghapusan tabel dilakukan langsung, termasuk semua data yang ada di dalamnya.
- Jika tabel yang dihapus tidak ada, tampil pesan kesalahan, operasi penghapusan diabaikan.
- Gunakan klausa
IF EXIST
untuk meniadakan pesan kesalahan. - Sebagai contoh, pernyataan berikut menghapus tabel mahasiswa.
DROP TABLE IF EXISTS mahasiswa;
Berikut adalah tampilan shell berdasarkan pernyataan CQL di atas secara keseluruhan.
Referensi
- http://cassandra.apache.org/doc/latest/cql/ddl.html#alter-table
- https://docs.datastax.com/en/dse/6.0/cql/cql/cql_reference/cql_commands/cqlAlterTable.html
- http://cassandra.apache.org/doc/latest/cql/ddl.html#drop-table
- https://docs.datastax.com/en/dse/6.0/cql/cql/cql_reference/cql_commands/cqlDropTable.html