hallo,
hab folgende prozedure:
create or replace procedure VW_FAHRTVERLAUF_CREATE (in_Linie number, in_Route number, in_Kursnr number, in_Datum varchar2, in_Zeit_von varchar2, in_Zeit_bis varchar2) is
begin
execute immediate
'create or replace view VW_FAHRTVERLAUF as
SELECT distinct o.lsanr, o.mpname, m.sgbez, o.datum, o.zeit, o.kursnr,
TO_NUMBER(SUBSTR(o.mpname,3,2)) NR FROM OEVM2 o, ROUTE r, STATION s, MELDEPUNKT m
WHERE o.linienr='||in_Linie||' and o.routenr='||in_Route||' and o.linienr=r.linienr and o.routenr =
r.routenr and r.routeid=s.routeid and r.versid=m.versid and m.knoid=s.knoid
and m.mpname=o.mpname and m.mpnr=o.mpnr and m.sgbez=s.sgbez and
o.datum='||in_Datum||' and o.kursnr='||in_Kursnr||' and o.zeit>'||in_Zeit_von||' and o.zeit<'||in_Zeit_bis||'
order by o.zeit;';
end;
wenn ich diese mit dem befehl
execute VW_FAHRTVERLAUF_CREATE('2','1','5','07.07.2005','0 1:01:00','12:00:00')
starte
erscheint die fehlermeldung:
SQL command not properly ended at VW_FAHRTVERLAUF_CREATE, line5
(muesste die zeile mit execute immediate sein)
wenn ich den create view befehl manuell (also ausserhalb der procedure mit den identischen werten starte, so läuft der befehl durch und die view wird erstellt...)
hilfe, danke
chirstoph
hab folgende prozedure:
create or replace procedure VW_FAHRTVERLAUF_CREATE (in_Linie number, in_Route number, in_Kursnr number, in_Datum varchar2, in_Zeit_von varchar2, in_Zeit_bis varchar2) is
begin
execute immediate
'create or replace view VW_FAHRTVERLAUF as
SELECT distinct o.lsanr, o.mpname, m.sgbez, o.datum, o.zeit, o.kursnr,
TO_NUMBER(SUBSTR(o.mpname,3,2)) NR FROM OEVM2 o, ROUTE r, STATION s, MELDEPUNKT m
WHERE o.linienr='||in_Linie||' and o.routenr='||in_Route||' and o.linienr=r.linienr and o.routenr =
r.routenr and r.routeid=s.routeid and r.versid=m.versid and m.knoid=s.knoid
and m.mpname=o.mpname and m.mpnr=o.mpnr and m.sgbez=s.sgbez and
o.datum='||in_Datum||' and o.kursnr='||in_Kursnr||' and o.zeit>'||in_Zeit_von||' and o.zeit<'||in_Zeit_bis||'
order by o.zeit;';
end;
wenn ich diese mit dem befehl
execute VW_FAHRTVERLAUF_CREATE('2','1','5','07.07.2005','0 1:01:00','12:00:00')
starte
erscheint die fehlermeldung:
SQL command not properly ended at VW_FAHRTVERLAUF_CREATE, line5
(muesste die zeile mit execute immediate sein)
wenn ich den create view befehl manuell (also ausserhalb der procedure mit den identischen werten starte, so läuft der befehl durch und die view wird erstellt...)
hilfe, danke
chirstoph
Comment