Oracle SQL använder olika typer av programvaror lås för att förhindra att samma uppsättning data från att ändras med mer än en sats i taget . Vissa lås ställs in automatiskt av databassystemet , andra kan styras av exploatören . I vissa fall kan två processer både försöker låsa samma uppsättning data , vilket orsakar ett dödläge där varken processen kan slutföras. Databasen Systemet löser normalt dödläge villkor på egen hand , men utvecklare ofta vill identifiera och korrigera dessa frågor . Flera SQL-satser kan användas för att visa befintliga lås i databasen . Saker du behöver
Administrativ åtkomst
Visa fler instruktioner
1
Bestäm låset information du behöver visas . Lås information lagras i systemet vyer som man kan söka hjälp av grundläggande SELECT-satser . Några av dessa återvändande olika uppgifter .
DBA_LOCK listar alla lås och spärrar för närvarande innehas och utestående i en databas . Det här alternativet visar också information om andra lås blockeras av en enskild begäran om låsning .
DBA_LOCK_INTERNAL returnerar samma information som DBA_LOCK , förutom att blockera informationen inte returneras .
DBA_DDL_LOCKS och DBA_DML_LOCKS visar låsning information relaterad till Data Definition Language ( DDL ) uttalanden eller datamodifiering språk ( DML ) uttalanden .
2
Anslut till databasen för att utföra en fråga , antingen med ett kommandoradsgränssnitt eller önskat program . Addera 3
Ange önskade SELECT för att visa informationen i önskad vy . Till exempel :
SELECT * FROM
sys.dba_locks
WHERE [ tillstånd ]
" WHERE " uttalande är frivillig och kan användas för att begränsa ner dina resultat-set .
4
Kör SQL-uttryck och granska resultaten .