Pendahuluan
Menambahkan primary key ke tabel yang sudah ada di PostgreSQL adalah tugas yang dilakukan administrator database dan developer untuk menjaga integritas data dan mengoptimalkan performa database. Tutorial ini akan memandu Anda melalui langkah-langkah menambahkan primary key ke tabel yang sudah ada di PostgreSQL, beserta penjelasan perintah SQL dan hal-hal yang perlu diperhatikan.
Prasyarat
- Akses ke database PostgreSQL
- Hak akses yang cukup untuk mengubah struktur tabel
- Pemahaman dasar tentang SQL dan konsep database
Memahami Primary Key
Primary key adalah sebuah kolom atau sekelompok kolom yang digunakan untuk mengidentifikasi setiap baris dalam tabel secara unik. Nilainya harus unik dan tidak boleh berisi nilai NULL. Sebuah tabel hanya boleh memiliki satu primary key.
Langkah 1: Periksa Struktur Tabel Saat Ini
Sebelum menambahkan primary key, periksa struktur tabel yang ada untuk memastikan belum ada primary key dan untuk menentukan kolom mana yang bisa dijadikan key.
Anda bisa melakukannya dengan dua cara — dari command line atau secara visual di Beekeeper Studio.
Opsi 1 — Menggunakan psql
-- Replace 'your_table' with your table name
\d your_table
Perintah ini menampilkan kolom, index, dan constraint tabel langsung di psql.
Opsi 2 — Menggunakan Beekeeper Studio
Klik kanan tabel Anda di Beekeeper Studio lalu pilih View Structure untuk melihat semua kolom, index, dan constraint secara visual.

Langkah 2: Pilih Kolom yang Tepat
Pilih kolom yang dijamin unik untuk setiap baris. Jika kolom seperti itu tidak ada, Anda mungkin perlu membuat kolom baru atau menggunakan kombinasi beberapa kolom untuk membentuk composite key.
Langkah 3: Tambahkan Primary Key
Primary Key Satu Kolom
Jika Anda memilih satu kolom yang mengidentifikasi setiap baris secara unik, dan Anda sudah terhubung ke database yang benar, Anda bisa menggunakan sintaks SQL berikut:
-- Replace 'your_table' and 'column_name' with your actual table name and column name
ALTER TABLE your_table
ADD PRIMARY KEY (column_name);
Misalnya, jika Anda ingin menambahkan primary key ke tabel bernama customer yang memiliki kolom customer_id, first_name, dan last_name, Anda bisa menggunakan perintah ALTER TABLE berikut:
ALTER TABLE customer ADD PRIMARY KEY (customer_id);
Perintah ini akan membuat primary key pada kolom customer_id.
Menambahkan Composite Primary Key ke Tabel yang Sudah Ada
Sebagai alternatif, Anda bisa membuat composite primary key yang terdiri dari beberapa kolom, seperti ini:
ALTER TABLE customer ADD PRIMARY KEY (first_name, last_name);
Perintah ini akan membuat primary key yang terdiri dari kolom first_name dan last_name.
Langkah 4: Verifikasi Primary Key Baru
Setelah menambahkan primary key, penting untuk memverifikasi bahwa primary key telah diterapkan dengan benar pada tabel.
-- Check the constraints on the table to confirm the primary key exists
SELECT conname, contype
FROM pg_constraint
WHERE conrelid = 'your_table'::regclass;
Jika Anda lebih suka menggunakan GUI, Beekeeper Studio otomatis menampilkan ikon kunci di samping kolom primary pada tab Structure setelah constraint ditambahkan.
Output yang Diharapkan dengan customer
conname | contype
------------------------------+---------
customer_pkey | p
customer_support_rep_id_fkey | f
contype p menandakan constraint primary key.
Hal yang Perlu Diperhatikan Saat Menambahkan Primary Key
- Keunikan Data: Pastikan kolom yang Anda jadikan primary key memiliki data unik di semua baris.
- Performa: Menambahkan primary key pada tabel besar bisa memakan banyak resource dan waktu. Pertimbangkan jadwal maintenance untuk tabel besar.
- Integritas Data: Setelah constraint primary key ditambahkan, setiap operasi insert atau update yang mencoba memasukkan entri duplikat akan menghasilkan error.
Ringkasan
Menambahkan primary key ke tabel yang sudah ada di PostgreSQL membantu menjaga integritas data dan meningkatkan performa.
Baik Anda lebih suka SQL lewat command line maupun alur kerja visual, tool seperti Beekeeper Studio memudahkan Anda memeriksa schema, memverifikasi constraint baru, dan menghindari kesalahan.
Perlu memeriksa sintaks SQL sebelum menjalankannya? Coba SQL Syntax Checker gratis kami — dan saat Anda siap menerapkan perubahan, buka database Anda di Beekeeper Studio untuk melihat hasilnya seketika.
Beekeeper Studio Adalah GUI Database Gratis & Open Source
Tool query & editor SQL terbaik yang pernah saya pakai. Semua yang saya butuhkan untuk mengelola database ada di sini. - ⭐⭐⭐⭐⭐ Mit
Beekeeper Studio cepat, intuitif, dan mudah digunakan. Beekeeper mendukung banyak sekali database, dan berjalan mulus di Windows, Mac, dan Linux.
Apa Kata Pengguna tentang Beekeeper Studio
"Beekeeper Studio sepenuhnya menggantikan alur kerja SQL lama saya. Cepat, intuitif, dan membuat pekerjaan database kembali menyenangkan."
"Saya sudah mencoba banyak GUI database, tapi Beekeeper punya keseimbangan sempurna antara fitur dan kesederhanaan. Langsung berfungsi."