Birleşik anahtar oluştururken sözdizimi hatasını anlamıyorum. Mantık hatası olabilir, çünkü birçok çeşidi test ettim.Postgres: Kompozit anahtarlar nasıl yapılır?
Postgres'te bileşik anahtarlar nasıl oluşturulur?
CREATE TABLE tags
(
(question_id, tag_id) NOT NULL,
question_id INTEGER NOT NULL,
tag_id SERIAL NOT NULL,
tag1 VARCHAR(20),
tag2 VARCHAR(20),
tag3 VARCHAR(20),
PRIMARY KEY(question_id, tag_id),
CONSTRAINT no_duplicate_tag UNIQUE (question_id, tag_id)
);
ERROR: syntax error at or near "("
LINE 3: (question_id, tag_id) NOT NULL,
^
nasıl "KISITLAMA (Tag1, TAG2, TAG3) İÇİN TAG_ID GELEN EŞSİZ REFERANS no_duplicate_refences" gibi bir contraint uygulamak? –
@Masi, Burada modellemeye çalıştığınız şeyi yeterince anlayamadım ve açıkçası, 'tag1' - 'tag3' sütunları, daha fazla tasarım geliştirmesi yapabileceğinizi gösteriyor. Belki de, modelinizin doğal dil tanımlaması ve birkaç örnek kayıt ile ayrı bir soru yardımcı olacaktır. – pilcrow