- Vous devez avoir un espace entre le nom de la table et le
WHEREsuivant clause - Le
INTOdoit faire partie duEXECUTE IMMEDIATE, ne fait pas partie de l'instruction SQL dynamique. - L'instruction SQL dynamique ne doit pas comporter de point-virgule à la fin
- Le
EXECUTE IMMEDIATEl'instruction doit se terminer par un point-virgule
En les rassemblant, quelque chose comme ça devrait fonctionner
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;
Bien sûr, puisque vous ne faites rien avec VR_UPDATE , rien ne s'affichera lors de l'exécution de ce bloc anonyme.