Oracle
 sql >> Base de données >  >> RDS >> Oracle

ORA-00907 lors de la création dynamique d'une vue en PL/SQL et de l'utilisation d'un CLOB

Comme Klas l'a dit, vous devriez pouvoir utiliser VARCHAR2 (32767) pour votre déclaration de variable, mais si vous trouvez que cela ne suffit pas, vous pouvez simplement utiliser plusieurs variables VARCHAR2 pour contenir les différentes parties de l'instruction de vue, puis émettez-les dans l'instruction EXECUTE IMMEDIATE.

Une réponse AskTom ici montre :

http://asktom. oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:6161200355268

Dit :

Tout sur 8.1.7

Ma question est quelle est la longueur maximale de la chaîne d'exécution immédiate parce que je craignais qu'elle ne soit 32k et que nous l'ayons déjà dépassée, et je ne sais pas quand je vais frapper le mur.

Tom Kyte répond :

Bien que ce soit sur une instance de base de données Oracle 8i, je serais très surpris si la possibilité de connecter en série les variables VARCHAR2 avait été abandonnée dans les révisions ultérieures. Malheureusement, je ne peux pas le tester car je n'ai pas d'instance 10g sous la main pour le moment.