1.) Texte aus oerr unter Linux
06502, 00000, „PL/SQL: numeric or value error%s“
// *Cause: An arithmetic, numeric, string, conversion, or constraint error
// occurred. For example, this error occurs if an attempt is made to
// assign the value NULL to a variable declared NOT NULL, or if an
// attempt is made to assign an integer larger than 99 to a variable
// declared NUMBER(2).
// *Action: Change the data, how it is manipulated, or how it is declared so
// that values do not violate constraints.
2.) Erklärung
Diese Meldung wird angezeigt, wenn entweder ein numerischer Wert in ein numerisches Feld gebracht werde soll, dessen Länge hierfür zu kurz ist oder aber, wenn ein nicht-numerischer Wert in ein numerisches Feld gebracht werden soll.
3.) Lösungsvorschläge
1. Numerischer Wert – Feldlänge vergrößern
Fehler:
v_nummer number(2);
…..
V_nummer := 999;
Lösung:
V_nummer number(3);
statt: v_nummer number(2);
2. Nicht-numerischer Wert für numerisches Feld
Fehler:
v_nummer number(2);
…..
V_nummer := ‚b‘;
Lösung:
V_nummer := ASCII(‚b‘);
statt: V_nummer := ‚b‘;