sql >> Databasteknik >  >> RDS >> Oracle

Lägga till många (UDF) valideringsfunktioner till Oracle - vilken metod kör snabbast

Den fristående funktionen kan vara mycket snabbare om du ställer in den på DETERMINISTIC och om data är mycket repetitiva. På min maskin minskade denna inställning körtiden från 9 sekunder till 0,1 sekunder. Av skäl som jag inte förstår att inställningen inte förbättrar objektfunktionens prestanda.

create or replace function isValid2(v in varchar2, format in varchar2)
return valObj
deterministic --<< Hit the turbo button!
is
  test number;
begin
if format = 'number' then
    begin
        test := to_number(v);
        return valObj(1,null);
        exception when VALUE_ERROR then return valObj(0,'Invalid number. Valid formats are: 12345, 12345.67, -12345, etc...');
    end;
end if;
end;
/


  1. Låsa en MySQL-databas så att bara en person på en gång kan köra en fråga?

  2. sql-servern delar upp kommaseparerade värden i kolumner

  3. Hitta hela trädet från roten som ger valfri nod

  4. JPA infoga förälder/underordnade resultat i MySQLIintegrityConstraintViolationException