J'ai besoin d'aide dans la requête dynamique pour le scénario suivant.Problème de requête dynamique oracle: comment obtenir de la valeur dans une variable qui fait partie de la chaîne
I ont une procédure A dans laquelle je stocke une chaîne de caractères dans une variable de sortie qui sera transmise à une procédure B.
Procédure B nomdetable reçoit également en tant que paramètre d'entrée, mais la procédure A n'a pas, cependant La procédure A utilise également la variable tablename.
Je pense à la façon d'utiliser tablename variable dans la procédure une chaîne telle que lorsque la chaîne est passée à la procédure B, son entrée valeur de la variable de tablename obtient affectée à la variable tablename dans la chaîne de procédure A.
Je vais essayer d'expliquer avec un échantillon de code. C'est un échantillon et pas de code réel.
proc A
begin
--- string that uses tablename but has no variable input for tablename.
mystr:='AND DAY_OF_WEEK_ID IN (SELECT B.DAY_ID FROM DAY_OF_WEEK B
INNER JOIN CD.' || 'v_tableName' || ' CD
ON TRIM(TO_CHAR(TO_TIMESTAMP(CD.GMT_SEIZ_DT_TIME,''YYYYMMDDHH24MISS''), ''DAY'')) = B.NAME WHERE B.DAY_ID IN (1,7))';
end;
proc B
(v_tablename, mystr)
begin
mystr2:= 'insert into sometable
select ' || mystr || ' from ' || v_tablename
end;
de sorte que la chaîne de mystr contient déjà variable tablename pour laquelle je veux la même valeur à attribuer comme v_table_name variable de procédure B.
I excuses si je l'ai fait le scénario trop complexe, mais je ne pouvais Ne trouve pas mieux.
Cordialement.
Je ne comprends pas la question –
Désolé à ce sujet. Je savais que mon explication est complexe. L'affichage du code réel n'était pas réalisable pour moi. –