Ho una tabella che definisce la regola tra due varianti:In Oracle, Come dichiaro un vincolo univoco su una coppia di valori ed è paio inverso
CREATE TABLE VARIANTCOMBINATIONRULE
(
VARRECID0 NUMBER(10) NOT NULL,
VARRECID1 NUMBER(10) NOT NULL,
RULE NUMBER
);
ALTER TABLE VARIANTCOMBINATIONRULE ADD (
CONSTRAINT VARIANTCOMBINATIONRULE_PK
PRIMARY KEY
(VARRECID0, VARRECID1));
Come si crea un vincolo che non consente " coppie invertite "? Con questo intendo che se c'è un record per le varianti 12 e 14, non dovrebbe essere consentito un nuovo record per la coppia invertita (14 e 12).
Non credo che si può direttamente ... Ci sono diverse opzioni come l'utilizzo di un trigger per assicurare che genere di cose (per esempio inserendo automaticamente la coppia invertita con qualche pennarello speciale) ... – Yahia