DB2-casting für DECIMAL

Bin ich versucht zu werfen, eine Zahl auf DECIMAL(10,2).
Wenn ich verstehe gut, eine Nummer wie "1234567890" sollte eine gültige
DECIMAL(10,2).
Aber wenn ich versuche, zu wirken, gibt es eine -413 Fehler:

"ÜBERLAUF ODER UNTERLAUF AUFGETRETEN IST, WÄHREND DER NUMERISCHEN DATENTYP-KONVERTIERUNG"

Dies ist der SQL:

select CAST( 1234567890 AS DECIMAL(10,2)) from SYSIBM.SYSDUMMY1;

Wie ich es sehe, das problem ist, dass es fügt zwei null Nachkommastellen,
also die Gesamtlänge ist 12, die ist keine gültige Zahl für a (10,2).

In der Tat, wenn ich versuche, es Stimmen zu (12,2) es funktioniert (zeigt "1234567890.00" ).

Ich Frage mich, ob dies ein Fehler ist oder ob ich was falsch mache.
GIEßEN (12,2) scheint sich nicht um eine zulässige option, weil es
akzeptieren Nummern wie "1234567890.12", die nicht gültig für a (10,2).

Vielen Dank im Voraus.

InformationsquelleAutor Elrohir | 2017-06-12
Schreibe einen Kommentar