Query dinamico con parametros de entrada tipo date
Estoy elaborando un select dinamico, y en el Where le envio dos parametros tipo date, pero al ejecutar el query, me dice que JUN no definido, por que el parametro lo envio asi
begin
cargar(to_date('28062005','ddmmyyyy'),to_date('28062005','ddmmyyyy'));
end;
el codigo esta escrito asi:
'where fecha between '|| P_FECHA_INICIO ||' and '|| P_FECHA_FINAL ||' and '||
pero cuando ejecuta lo convierte asi:
where de.fecha_denuncia between 28-JUN-05 and 28-JUN-05 and
Que debo hacer para que no moleste por el formato de la fecha?
Gracias
begin
cargar(to_date('28062005','ddmmyyyy'),to_date('28062005','ddmmyyyy'));
end;
el codigo esta escrito asi:
'where fecha between '|| P_FECHA_INICIO ||' and '|| P_FECHA_FINAL ||' and '||
pero cuando ejecuta lo convierte asi:
where de.fecha_denuncia between 28-JUN-05 and 28-JUN-05 and
Que debo hacer para que no moleste por el formato de la fecha?
Gracias
Buenas
Hay dos posivilidades:
1. Poner los to_date dentro de la select.
2. Poner parámetros dentro de la select.
Ejemplo
declare
CV REF_CUR;
select_str varchar2(1000)
Begin
select_str := 'SELECT * FROM LOTE WHERE especialidad_id = :p_articulo_id '||
' AND fecha_caduc > SYSDATE AND ';
OPEN CV FOR select_str using 'AA';
FETCH CV INTO ...
end;
Hay dos posivilidades:
1. Poner los to_date dentro de la select.
2. Poner parámetros dentro de la select.
Ejemplo
declare
CV REF_CUR;
select_str varchar2(1000)
Begin
select_str := 'SELECT * FROM LOTE WHERE especialidad_id = :p_articulo_id '||
' AND fecha_caduc > SYSDATE AND ';
OPEN CV FOR select_str using 'AA';
FETCH CV INTO ...
end;
