Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak określić typ zapytania sql dla jdbcTemplate w JAVA?

w Oracle możesz przeanalizować zapytanie przed jego wykonaniem

declare
    l_theCursor     integer default dbms_sql.open_cursor;
begin
    dbms_sql.parse(  l_theCursor,  'SELECT 1 FROM DUAL', dbms_sql.native );
end;

co i tak jest dobrą praktyką, ponieważ będziesz otrzymywać kod SQL z danych wejściowych użytkownika. jeśli oświadczenie nie jest prawidłowe, otrzymasz odpowiedni komunikat o błędzie. Oczywiście oświadczenie nie jest wykonywane przez powyższe.

Po przeanalizowaniu instrukcji możesz zapytać v$sql, aby znaleźć command_type:

select command_type, sql_text
from v$sql t
where sql_text = 'SELECT 1 FROM DUAL';

Różne typy_komend są takie:

2 -- WSTAW

3 -- WYBIERZ

6 -- AKTUALIZACJA

7 — USUŃ

189 — Scal

możesz uzyskać pełną listę, select * from audit_actions order by action

Mam nadzieję, że to pomoże :)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zmiana precyzji kolumny numerycznej w Oracle

  2. Najlepszy sposób na zbiorcze wstawianie danych do bazy danych Oracle

  3. Jak odwrócić ciąg znaków w Oracle (11g) SQL bez użycia funkcji REVERSE()?

  4. Ostatnie słowo w zdaniu:W SQL (możliwe wyrażenia regularne?)

  5. Oracle UTL_SMTP:przykład wysyłania poczty z załącznikiem przy użyciu uwierzytelniania portfela Oracle