La funzionalità di debug di qualsiasi IDE è una funzionalità importante e comunemente utilizzata. Scopri come utilizzare la funzionalità di debug di SQL Developer in questo articolo.
Come si avvia una sessione di debug di SQL Developer?
Prima di tutto, è possibile eseguire il debug solo sul codice PL/SQL. Il debug del normale codice SQL non è possibile e non avrebbe senso, poiché l’intera istruzione viene eseguita contemporaneamente. È possibile eseguire il debug solo nel codice con più passaggi.
Quindi, è necessario identificare quale codice si desidera eseguire il debug. Avrai bisogno di un oggetto codice per questo, come una funzione o una procedura.
Ho creato una procedura chiamata TESTFIRSTNAME, che esegue solo una semplice query e invia il risultato alla console usando DBMS_OUTPUT.
CREATE OR REPLACE PROCEDURE testFirstNameIS firstName VARCHAR2(20);BEGIN select first_name into firstName From student where student_id = 1; dbms_output.put_line(firstName);END;
Quindi, qual è il primo passo per eseguire il debug di questo?
Passo 1 – Compilare per il debug
Per prima cosa, vai a object explorer e trova la tua procedura o funzione.
Fare clic destro su di esso e selezionare Compila per il debug.
Questo ricompilerà l’oggetto e aggiungerà informazioni aggiuntive per scopi di debug.
Nota: Non si dovrebbe fare questo su un server di produzione, solo su un server di sviluppo o di test. Ma poi di nuovo, non dovresti comunque eseguire il debug sulla produzione!
Un altro modo per farlo è aprire l’oggetto nella vista del foglio di lavoro SQL e selezionare Compila per il debug.
Step 2 – Impostare i punti di interruzione o modificare l’azione di debug
Una volta compilato con successo, è necessario impostare la sessione di debug.
Se si avvia un debug ora, il codice verrà eseguito e non si fermerà, a meno che non trovi un errore.
Se vuoi che si fermi, puoi farlo in due modi.
In primo luogo, impostare un punto di interruzione. Un punto di interruzione è un punto nel codice in cui il debugger si fermerà. È utile per analizzare il percorso intrapreso dal codice e vedere quali variabili sono inizializzate e impostate.
Per impostare un punto di interruzione, fare clic sul margine sinistro del codice sulla riga su cui si desidera impostare un punto di interruzione. Se fatto correttamente, un punto rosso apparirà nel margine.
Per disattivare un breakpoint, fare nuovamente clic sul pulsante rosso.
Oppure, è possibile utilizzare la scorciatoia da tastiera di CTRL+MAIUSC+F5 per attivare o disattivare il punto di interruzione sulla linea selezionata.
Se non si desidera impostare un punto di interruzione, è sufficiente eseguire il codice e passare attraverso di esso. Tuttavia, non è presente alcun pulsante per avviare la sessione di debug facendo clic su Passaggio, come si trova in altri IDE. L’azione predefinita “debug” dello sviluppatore SQL deve essere eseguita fino a quando non si verifica un punto di interruzione.
È possibile modificarlo andando su Preferenze Strumenti > e facendo clic su Debugger.
Modificare l’opzione che dice “Avvia opzione di debug” per entrare. Ciò ti consentirà di fare clic su Debug ed eseguire la prima riga di codice.
Fare clic su OK.
Passo 3 – Connettersi al database
Un passo comunemente dimenticato è quello di connettersi al database nella finestra del foglio di lavoro SQL. Questo è il menu a discesa in alto a destra. Potrebbe essere già impostato sul database giusto, ma in caso contrario, selezionare il valore desiderato.
Passo 5 – Debug!
Ora che hai impostato l’ambiente e il codice, è possibile avviare il debug
Fare clic sul pulsante di debug, che si presenta come una piccola coccinella.
Oppure, premi CTRL+MAIUSC+F10.
Apparirà una finestra:
Questa finestra crea fondamentalmente un blocco PL/SQL anonimo di codice, per eseguire la procedura che si desidera eseguire il debug.
Perché questo viene fatto? È così che puoi impostare qualsiasi parametro o variabile prima di eseguire il codice, il che è piuttosto utile in tutti quei complicati bug che potresti affrontare.
Modificare il codice o aggiungere tutti i parametri che ti piace, e fare clic su OK.
Se viene visualizzato un avviso firewall, è possibile fare clic su “Consenti accesso”.
Il debugger dovrebbe ora essere in esecuzione!
SQL Developer Debug Commands
Ci sono diversi comandi disponibili nel debugger SQL Developer.
Da sinistra a destra, a partire dal grande quadrato rosso, sono:
- Stop-interrompe la sessione di debug.
- Trova punto di esecuzione: sposta il cursore sul punto in cui il codice si è fermato.
- Passa oltre-passa alla riga selezionata e passa alla riga successiva nel codice.
- Step Into-passi nella riga di codice selezionata, facendo sì che il debugger continui all’interno del metodo o della funzione su cui è attualmente attiva la riga di codice.
- Step Out-esce dal metodo o dalla funzione in cui ti trovi e ritorna al livello sopra.
- Passaggio alla fine del metodo-va alla fine del metodo.
- Riprendi-continua il debug, fino al raggiungimento di un altro errore o punto di interruzione.
- Pausa – mette in pausa il debugger al suo posto.
- Sospendi tutti i punti di interruzione: disattiva tutti i punti di interruzione nel database corrente.
Se hai già utilizzato altri strumenti di debug, questo concetto potrebbe già esserti familiare.