- Debe dejar un espacio entre el nombre de la tabla y el subsiguiente
WHERE
cláusula - El
INTO
debe ser parte deEXECUTE IMMEDIATE
, no forma parte de la instrucción SQL dinámica. - La instrucción de SQL dinámico no debe tener un punto y coma al final
- El
EXECUTE IMMEDIATE
declaración debe terminar con un punto y coma
Poniéndolos juntos, algo como esto debería funcionar
declare
VR_TABLE VARCHAR2(256);
VR_UPDATE VARCHAR2(256);
begin
VR_TABLE :='SYSTEM_STATUS';
EXECUTE IMMEDIATE 'select UPDATE_VERSION from ' || VR_TABLE || ' where rownum < 2'
INTO VR_UPDATE;
end;
Por supuesto, ya que no estás haciendo nada con VR_UPDATE
, no se mostrará nada cuando se ejecute este bloque anónimo.