Oracle SQL bruger forskellige typer af software låse til at forhindre det samme sæt af data fra at blive ændret af mere end én erklæring ad gangen. Nogle låse er automatisk af databasesystemet , andre kan styres af bygherren . I nogle tilfælde kan to processer både forsøger at låse det samme sæt af data, medførende en blindgyde tilstand, hvor ingen af processerne kan fuldføre . Databasesystemet normalt løser dødvande vilkår på egen hånd , men udviklerne ofte ønsker at identificere og korrigere disse spørgsmål. Flere SQL-sætninger kan bruges til at se eksisterende låse i databasen. Ting du skal
Administrative adgang
Vis Flere Instruktioner
1
Bestem låsen oplysninger du har brug vises. Lås oplysninger opbevares i system synspunkter , der kan forespørges ved hjælp af grundlæggende SELECT-sætninger . Nogle af disse retur forskellige data.
DBA_LOCK viser alle låse og låse i øjeblikket indehaves og enestående i en database. Denne indstilling viser også oplysninger om andre låse blokeres af en individuel lås anmodning.
DBA_LOCK_INTERNAL returnerer den samme information som DBA_LOCK , bortset fra at blokere oplysningerne ikke returneres .
DBA_DDL_LOCKS og DBA_DML_LOCKS vise låsning information relateret til data definition sprog ( DDL ) erklæringer eller data modifikation sprog ( DML ) udsagn.
2
Forbind til databasen for at udføre en forespørgsel , enten ved hjælp af en kommandolinje -grænseflade eller dit foretrukne program .
3
skriv den ønskede SELECT-sætningen for at se oplysningerne i den foretrukne visning. For eksempel : Hej
SELECT * FROM
sys.dba_locks
WHERE [ tilstand ]
" WHERE " erklæring er valgfri og kan bruges til at indsnævre ned din resultatsæt .
4
Udfør SQL-sætningen og gennemgå resultaterne.