Como Klas disse, você deve ser capaz de usar VARCHAR2(32767) para sua declaração de variável, mas se você achar que isso não é suficiente, você pode usar mais de uma variável VARCHAR2 para manter as várias partes da instrução de exibição e, em seguida, emita-os para a instrução EXECUTE IMMEDIATE.
Uma resposta do AskTom aqui demonstra:
http://asktom. oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:6161200355268
Diz:
Tudo em 8.1.7
Minha pergunta é qual é o comprimento máximo para o execute instantstring porque eu estava preocupado que fosse 32k e já superamos isso, e não tenho certeza de quando vou bater na parede.
Tom Kyte responde:
Embora isso estivesse em uma instância de banco de dados Oracle 8i, eu ficaria muito surpreso se a capacidade de encadear as variáveis VARCHAR2 tivesse sido descartada em revisões posteriores. Infelizmente não posso testá-lo, pois não tenho uma instância de 10g disponível no momento.