sql >> Database teknologi >  >> RDS >> Oracle

ORA-00907, når du dynamisk opretter en visning i PL/SQL og bruger en CLOB

Som Klas har sagt, bør du kunne bruge VARCHAR2(32767) til din variabeldeklaration, men hvis du finder ud af, at dette ikke er helt nok, kan du bare bruge mere end én VARCHAR2-variabel til at holde de forskellige dele af view-sætningen og derefter udstede dem til EXECUTE IMMEDIATE-sætningen.

Et AskTom-svar her demonstrerer:

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

Siger:

Alle på 8.1.7

Mit spørgsmål er, hvad er den maksimale længde for execute immediatestring, fordi jeg var bekymret for, at det var 32k, og vi er allerede over det, og jeg er ikke sikker på, hvornår jeg kommer til at ramme muren.

Tom Kyte svarer:

Selvom dette var på en Oracle 8i-databaseinstans, ville jeg blive meget overrasket, hvis muligheden for at seriekæde VARCHAR2-variablerne var blevet droppet i senere revisioner. Desværre kan jeg ikke teste det, da jeg ikke har en 10g-instans til rådighed i øjeblikket.




  1. Hvordan får jeg PHP til at fungere med ADOdb og MySQL?

  2. Postgres hierarkisk (jsonb) CTE unødigt langsom

  3. Fejl 310:Iscenesættelse mislykkedes ved implementering - Grails-app i Cloud Foundry

  4. Mysql slette ældre dubletter