- U moet een spatie hebben tussen de tabelnaam en de daaropvolgende
WHERE
clausule - De
INTO
moet deel uitmaken van deEXECUTE IMMEDIATE
, geen onderdeel van de dynamische SQL-instructie. - De dynamische SQL-instructie mag geen puntkomma achteraan hebben
- De
EXECUTE IMMEDIATE
statement moet eindigen met een puntkomma
Als je die samenvoegt, zou zoiets moeten werken
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;
Natuurlijk, aangezien je niets doet met VR_UPDATE
, wordt er niets weergegeven wanneer dit anonieme blok wordt uitgevoerd.