quarta-feira, 28 de dezembro de 2016

Como identificar o SQL_ID de um processamento

Para identificarmos o SQL_ID de um processamento no banco de dados, podemos entre algumas opções utilizar a view V$SQL;


Para isso, precisaremos:


1) Executar o SQL desejado:

Conectado no banco de dados, devemos executar o SQL que desejamos para que as informações sobre esse SQL fiquem registradas na view V$SQL.

SQL> SELECT NOME,CIDADE,UF FROM INFO WHERE CIDADE='CAJATI';



2) Obter o SQL_ID

Após a execução do SQL desejado, devemos fazer a consulta na V$SQL, onde informaremos parte do texto do SQL que desejamos obter o SQL_ID, conforme demostrado abaixo:


SELECT sql_id, hash_value, substr(sql_text,1,40) sql_text FROM V$SQL WHERE sql_text like 'SELECT NOME,CIDADE,UF%'

SQL_ID        HASH_VALUE SQL_TEXT
------------- ---------- -------------------------------------------
8g81zcprgb2t4 1861585700 SELECT NOME,CIDADE,UF FROM INFO WHERE CI



Obs.: Existem outras formas de obtenção do SQL_ID de um processamento, onde podemos utilizar as views gv$sql, v$session, gv$session, v$sqlarea, entre outras.