Stefan Koschke
2012-01-03 09:58:03 UTC
Hallo,
erst mal ein gesundes neues jahr und schon neue Probleme:
Ich bekomme beim Schreiben in eine Datenbank den im Betreff genannten
Fehler.
Die Ursache ist klar, bei
query.fieldbyname(cInhalt).AsString := x;
ist x länger als die in der DB vorgegebene Feldlänge.
Wie aber fange ich so etwas ab?
mit
try
query.edit;
query.fieldbyname...
query.post;
except
irgendwas
end;
wird dann der gleiche Laufzeitfehler in der aufrufenden Funktion gefeuert!
Gibt es eine mir bisher unbekannte Funktion, welche nur die Menge Text
in das Feld schreibt die vorgesehen ist und den Rest abschneidet oder
muß ich an jeder Stelle im Programm erst die verfügbare Länge ermitteln
und den String manuell kürzen?
Das wären ein paar Hundert Stellen, die möchte ich nicht unbedingt alle
anpassen :-(
Prinzipiell ist die Datenbank richtig voreingestellt, aber durch
Kommunikationsfehler können eben mal zu lange Strings entstehen.
Wie gehe ich nun am besten vor?
Danke
Ciao
Stefan
erst mal ein gesundes neues jahr und schon neue Probleme:
Ich bekomme beim Schreiben in eine Datenbank den im Betreff genannten
Fehler.
Die Ursache ist klar, bei
query.fieldbyname(cInhalt).AsString := x;
ist x länger als die in der DB vorgegebene Feldlänge.
Wie aber fange ich so etwas ab?
mit
try
query.edit;
query.fieldbyname...
query.post;
except
irgendwas
end;
wird dann der gleiche Laufzeitfehler in der aufrufenden Funktion gefeuert!
Gibt es eine mir bisher unbekannte Funktion, welche nur die Menge Text
in das Feld schreibt die vorgesehen ist und den Rest abschneidet oder
muß ich an jeder Stelle im Programm erst die verfügbare Länge ermitteln
und den String manuell kürzen?
Das wären ein paar Hundert Stellen, die möchte ich nicht unbedingt alle
anpassen :-(
Prinzipiell ist die Datenbank richtig voreingestellt, aber durch
Kommunikationsfehler können eben mal zu lange Strings entstehen.
Wie gehe ich nun am besten vor?
Danke
Ciao
Stefan