Problème avec une requête en SQL dynamique
Bonjour à tous j'ai un souci avec l'exécution de ce code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
declare
cursor req is
select table_name,column_name
from user_tab_columns
where data_type like '%CHAR%'
and table_name like 'AGTNAT';
--
nomtable user_tab_columns.table_name%Type ;
colonne user_tab_columns.column_name%Type ;
resultat integer := 0;
requete varchar(512);
begin
open req;
Loop
fetch req into nomtable,colonne;
requete := `select count (*) from` || nomtable || `where` || colonne || `like 'TOUJA%'`;
execute immediate requete into resultat;
if resultat > 0 then
dbms_output.put_line ('table:'||nomtable||' colonne:'||colonne);
end if;
exit when req%NOTFOUND;
end loop;
close req;
end ; |
L'exécution plante sur la déclaration de la requête. Celà me met:
Code:
1 2 3 4 5 6 7 8 9 10
|
ORA-06550: Ligne 16, colonne 12 :
PLS-00103: Symbole "`" rencontré à la place d'un des symboles suivants :
( - + case mod new not null <an identifier>
<a double-quoted delimited-identifier> <a bind variable> avg
count current exists max min prior sql stddev sum variance
execute forall merge time timestamp interval date
<a string literal with character set specification>
<a number> <a single-quoted SQL string> pipe |
Qui pourrais m'éclairer?