sql >> Databáze >  >> RDS >> Oracle

Podmíněné jedinečné omezení s více poli v databázi Oracle

@jamesfrj:zdá se, že se snažíte zajistit, aby vaše tabulka obsahovala pouze jeden záznam, pro který je status <>5 .

Můžete zkusit vytvořit jedinečný funkční index zřetězením sloupců, jak je uvedeno níže

      create table XPTO_TABLE (id number, 
                            obj_x varchar2(20),
                            date_x date,
                            type_x varchar2(20),
                            status_x varchar2(20)                              
                           );

      create unique index xpto_table_idx1 on XPTO_TABLE(case when status_x <>'5'  THEN              obj_x||date_x||type_x||STATUS_x ELSE null END);

Doufám, že to pomůže

Vishad



  1. Můj DBA je nemocný – Tipy pro přepnutí databáze při selhání databáze pro správce systému

  2. Java Multicast Time To Live je vždy 0

  3. Alternativa k použití připraveného příkazu v Trigger s MySQL

  4. MySQL:Rozdělení velké tabulky na oddíly nebo samostatné tabulky?