Upravo i ja masovno koristim parametrizovane poglede (parametrised views), a uskoro bih trebao slican princip koristiti i za Virtual Private Database u Oracleu.
Pri programiranju i testiranju performansi doticnih parametrizovanih pogleda (parametrised views; btw. ima li neko dobar prevod za ovo? :) ), otkrio sam da je veoma brze koristiti "inline SELECT query from dual", nego direktan poziv rutine sys_context, tako da bi prethodni primjer trebao izgledati ovako:
Code:
create or replace view pom as
select * from tabela
where
prom1= (select to_number(sys_context('kontekst','prom1')) from dual)
and prom2= (select sys_context('kontekst','prom2') from dual);
Jos nisam stigao potraziti i detaljno procitati neku literaturu u vezi internog funkcionisanja rutine sys_context, tako da ne mogu konkretno objasniti zasto je inline query from dual brzi, nego direktni poziv... Pretpostavljam da je zbog parsovanja, ali nisam siguran...
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA