Beim Speichern einer Authorization Scheme tritt folgender Fehler auf:
ORA-01461: can bind a LONG value only for insert into a LONG column
Die einzige Möglichkeit ist nun „Return to application“ zu klicken und das bewirkt, dass der gesamte PL/SQL-Code, den ich eingegeben habe, komplett verschwunden ist. Wirklich ärgerlich – aber noch ärgerlicher wird es, wenn man sich die Ursache anschaut.
Ursache
Die Ursache liegt darin, dass der PL/SQL-Code zu lang ist. Sobald mein Source-Code mehr als 4000 Zeichen hat, kommt dieser Fehler.
Man sollte eigentlich meinen, dass mit Oracle 12c und APEX 5 die 4000-Zeichen Begrenzung endlich der Vergangenheit angehören würde, aber leider weit gefehlt!
Lösung
Ich denke die möglichen Lösungen kennt jeder.
- Text kürzen
- Kommentarzeichen entfernen
- Leerzeichen entfernen
- Source-Code in Stored Procedure auslagern.