Entwickler-Ecke
Datenbanken - Datenfehler beim Schreiben numerischer Wert zu ORACLE
whalle - Fr 12.07.02 06:42
Titel: Datenfehler beim Schreiben numerischer Wert zu ORACLE
In der ORACLE-Tabelle ist ein Feld "xxx number(8.1)" definiert.
Im Delphi-Programm wird mittels SQL-Query und Datasource auf die Tabelle
zugegriffen.
Beim Lesen ist alle OK. Beim Schreiben kommt folgender Fehler:
ORA-01722: invalid number
Cause: The attempted conversion of a character string to a number failed because the
character string was not a valid numeric literal. Only numeric fields or character
fields containing numeric data may be used in arithmetic functions or expressions.
Only numeric fields may be added to or subtracted from dates.
Wer kann helfen? Danke
MrSpock - Fr 12.07.02 07:25
Hallo whalle,
wie schreibst du denn den Wert in die Datenbank?
Eine solche Fehlermeldung kann auch dadurch erzeugt werden, dass du den falschen Dezimalseparator benutzt, also z.B. Komma anstatt Punkt.
whalle - Fr 12.07.02 09:15
Danke, ich glaube, dass dieses nicht der Fehler sein kann, da ich
-- DecimalSeparator:='.'; --
gesetzt habe.
Der ORACLE-Fehler scheint unabhängig vom Dezimalseparator
zu sein.
Alfons-G - So 14.07.02 00:42
Versuch mal, was Oracle macht, wenn Du Deinen SQL-Befehl direkt über SQL+ eingibst, wahlweise mit Punkt und Komma.
So altertümlich SQL+ von der Bedienung her auch ist, zur Fehlersuche in SQL-Befehlen ist es goldig. Wenn ich in einer Query einen Fehler habe, kopiere ich mir das SQl immer in SQL+, wo ich ganau die Stelle, wo der Fehler liegt, angezeigt bekomme.
:idea:
whalle - Mo 15.07.02 10:19
Danke, ich habe das Problem dadurch gelöst, dass ich eine komplette
SQL-Anweisung bereitstelle und diese mit ExecSql in die Datenbank schreibe
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!