sql >> Databasteknik >  >> RDS >> Oracle

Ta reda på om en kolumn har en unik begränsning

Båda svaren som ges här missar ett sätt att framtvinga unikhet på en kolumn:genom att skapa ett unikt index (utan att definiera en unik begränsning på kolumnen). Se dessa två länkar (en , två ) om du inte är bekant med det här alternativet.

Denna kontroll bör utföras ytterligare till den unika begränsningskontrollen:

select count(*) from
USER_IND_COLUMNS cols
where cols.table_name='YOUR_TABLE_NAME'
and cols.COLUMN_NAME='YOUR_COLUMN';

För att leta efter en unik begränsning använd den redan tillhandahållna metoden:

select count(*) cnt 
from user_constraints uc
where uc.table_name='YOUR_TABLE_NAME'
and uc.constraint_type='U';

Alternativt kan du också titta i ALL_CONSTRAINTS och ALL_IND_COLUMNS visningar.



  1. Vad är PL/SQL-lagrade procedurer i Oracle Database

  2. MySQL Cross Table Constraint

  3. Använda LogMiner för att hitta aktuella ändringar

  4. Hämta data baserat på månad av ett kvartal i sql