sql >> Databasteknik >  >> RDS >> Oracle

Upprätthållande av unik/primär nyckel - drop index

Du kan fråga ALL_CONSTRAINTS prestandavy för att se vilken begränsning indexet används av och vilken tabell det gäller, t.ex.:

select owner, constraint_name, constraint_type,
    table_name, index_owner, index_name
from all_constraints
where index_name = 'PK_CHARGES';

Jag förväntar mig att tabellnamnet är 'CHARGES', att begränsningsnamnet matchar indexnamnet och att begränsningstypen är 'P'. Men eftersom du har en tabell i åtanke, kanske namnen inte följer en användbar konvention. Kanske döptes en gammal version av tabellen om, vilket skulle lämna restriktioner mot det nya namnet (t.ex. CHARGES_BACKUP eller något).

Du sa att du klickade på bordet och sedan på vyn. Du kanske inte tittar på tabellen som begränsningen/indexet är på; eller kanske du tittar på en vy ovanpå själva bordet. Du nämner också en SYS_ index på samma kolumner - som inte kan vara i samma tabell. Har du flera liknande tabeller eller tillgång till flera scheman? Du ska köra ovanstående fråga för det indexet också. Som nämnts ovan kan du hitta en gammal version (eller versioner) av tabellen.

När du har identifierat vilken tabell begränsningen är på, måste du bestämma om du faktiskt ska behålla den, och om inte kan du ta bort den genom att släppa begränsningen med en ALTER TABLE kommando.



  1. Vad är det snabbaste sättet att slå upp stora tabeller efter poäng inom radie MySQL (latitud longitud)

  2. Begränsning definierad UPPHÖJBAR INitialt OMEDELBART är fortfarande UPPHÖJD?

  3. Användarkontohantering, roller, behörigheter, autentisering PHP och MySQL - Del 4

  4. Lika med (=) mot LIKE för datumdatatyp