sql >> Databáze >  >> RDS >> Oracle

Jak určit typ sql dotazu pro jdbcTemplate v JAVA?

v Oracle můžete analyzovat dotaz před jeho provedením

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

což je každopádně dobrá praxe, protože budete dostávat SQL z uživatelského vstupu. pokud příkaz není platný, zobrazí se příslušná chybová zpráva. Příkaz samozřejmě není proveden výše uvedeným.

Po analýze příkazu můžete dotazem v$sql zjistit command_type:

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

Různé commands_types jsou podobné:

2 -- VLOŽIT

3 -- VYBERTE

6 -- AKTUALIZACE

7 -- ODSTRANIT

189 -- SLUČIT

úplný seznam můžete získat select * from audit_actions order by action

Doufám, že to pomůže :)



  1. Počáteční konfigurace Postgresql:Jak přistupovat jako uživatel postgres?

  2. Jaký je rozdíl mezi utf8_general_ci a utf8_unicode_ci?

  3. Jak zapsat data na nový list EXCELu

  4. Pokročilá souhrnná pole