Saya ingin mengatur tabel di PostgreSQL sedemikian rupa sehingga dua kolom harus unik. Mungkin ada beberapa nilai dari nilai mana pun, asalkan tidak ada dua yang berbagi keduanya.
Misalnya:
CREATE TABLE someTable (
id int PRIMARY KEY AUTOINCREMENT,
col1 int NOT NULL,
col2 int NOT NULL
)
Jadi, col1
dan col2
bisa diulang, tapi tidak sekaligus. Jadi, ini akan diizinkan (Tidak termasuk id)
1 1
1 2
2 1
2 2
tapi bukan ini:
1 1
1 2
1 1 -- would reject this insert for violating constraints
sql
postgresql
unique
PearsonArtPhoto
sumber
sumber
Jawaban:
autoincrement
bukan postgresql. Anda menginginkanserial
.Jika col1 dan col2 membuat unik dan tidak bisa nol maka mereka membuat kunci utama yang baik:
sumber
Buat batasan unik yang dua angka bersama TIDAK BISA diulang:
sumber
Sepertinya KONSTRA UNIK biasa :)
Lebih lanjut di sini
sumber
a
dan indeks untukc
secara mandiri? Karena saya perlu mencari berdasarkana
kadang-kadang, dan kadang-kadang menemukan berdasarkanc
.