Hallo Zusammen,
hab ein kleines Problem unter Oracle 9.02.
Hab einen Trigger der unter Oracle 8 bereits einwandfrei läuft aber unter Oracle 9 kompilierungsfehler bekommt.
Hier erstmal der Trigger
create or replace trigger ro_del_sp
before delete on „SpProCar“
for each row
declare
position number;
laenge number;
differ number;
machine varchar2(100);
machine2 varchar2(100);
lmachine2 number;
username varchar2(100);
program varchar2(200);
reg2 varchar2(100);
begin
if :old.„classid“='SCSCurProCar’then
select s.machine into machine from v$session s where s.audsid = userenv(‚sessionid‘);
select s.osuser into username from v$session s where s.audsid = userenv(‚sessionid‘);
select s.program into program from v$session s where s.audsid = userenv(‚sessionid‘);
position:=instr(machine,’’,1);
laenge:=length(machine);
differ:=laenge-position;
select upper(trim(substr(machine,position+1,differ-1))) into machine2 from dual;
select length(trim(substr(machine,position+1,differ-1))) into lmachine2 from dual;
select nvl(min(regvalue),‚Kein Wert‘) into reg2 from ADMAPPPROFILE where username like ‚%DEFAULT%‘
and upper(substr(regname,1,lmachine2)) = machine2;
insert into ro_sp
(„proCarId“,datum,„chassisNo“,„orderNo“,„classid“,„proId“,lastlogin,machine,osuer,program)
values (:old.„proCarId“,sysdate,:old.„chassisNo“,:old.„orderNo“,:old.„classid“,:old.„proId“,reg2,machine,username,program);
END IF;
end;
/
Das Problem liegt im Zugriff auf die v$session.
Hier bekomme ich immer wieder die Meldungen unter show errors
15/2 PL/SQL: SQL Statement ignored
15/40 PL/SQL: ORA-00942: table or view does not exist
16/2 PL/SQL: SQL Statement ignored
16/40 PL/SQL: ORA-00942: table or view does not exist
17/2 PL/SQL: SQL Statement ignored
17/40 PL/SQL: ORA-00942: table or view does not exist
Eine normale Abfrage auf die v$session geht aber ?
Bin dankbar für jede Hilfe