Oracle Virtual Private Database kan vara vad du letar efter. Från manualen:
Du kanske kan hämta processen och frågetexten från SYS_CONTEXT
. Till exempel, sys_context('userenv', 'current_sql')
och sys_context('userenv', 'module')
. Du kan också behöva använda GV$SESSION
för att få mer information.
Jag tycker dock att du ska försöka undvika VPD om det är möjligt. Det är extremt förvirrande att ha alla dina SQL-satser tyst konverterade i bakgrunden. Det kan göra utveckling och felsökning mycket svårt.
Uppdatera
SQL Translation Framework funktion i Oracle 12c skulle förmodligen vara den bästa lösningen för detta problem.