![]() |
Datenbank: Interbase • Version: XE7 • Zugriff über: FD
Datentypwandlung bei Übergabe von Variablken an 'Select'
Hallo,
ich habe mich soweit durchgekämpft, dass ich ein SQL-Statement prinzipiell soweit hinbekommen habe, dass es funktioniert. Außer in folgendem speziellen Fall:
Code:
Das Feld "IDCREDITORS" ist ein Integer. Jetzt kommt -aber erst zur Laufzeit- aber ein Fehler, "Variante des Typs(String) konnte nicht in Typ(Int64) konvertiert werden.
CreditorsSaerchTable.SQL.Text :='SELECT NAME1 FROM CREDITORS '+
'WHERE IDCREDITORS = :SuchID'; CreditorsSaerchTable.ParamByName('SuchID').AsInteger:= StrToInt(ADBLUCBCreditors.Text); CreditorsSaerchTable.Open; Gibt's da was anderes, als StrToInt für? |
AW: Datentypwandlung bei Übergabe von Variablken an 'Select'
Gelöscht
|
AW: Datentypwandlung bei Übergabe von Variablken an 'Select'
Warum ist bei dem Edit nicht NumbersOnly aktiviert worden?
Dann ginge auch
Delphi-Quellcode:
oder
CreditorsSaerchTable.ParamByName('SuchID').AsString := ADBLUCBCreditors.Text;
Delphi-Quellcode:
.Value :=
Im Postgres würde ich
Delphi-Quellcode:
machen, alle anderen dürfen sich mit CAST rumärgern, falls sie unbedingt nochmal checken lassen wollen.
WHERE IDCREDITORS = :SuchID::INT
|
AW: Datentypwandlung bei Übergabe von Variablken an 'Select'
Was steht denn in
Delphi-Quellcode:
im Fehlerfalle drin? Ich tippe die Meldung kommt aus StrToInt...:zwinker:
ADBLUCBCreditors.Text
Wenn du nicht "NumbersOnly" haben willst...mit ![]() |
AW: Datentypwandlung bei Übergabe von Variablken an 'Select'
Zitat:
Ob das in deiner Situation sinnvoll ist, musst du selbst einschätzen. Ich würde eher dafür sorgen, dass nur Integer-Werte dort ankommen. Mit StrToIntDef kannst du bei unzulässigen Inhalten einen Default vorgeben (z.B. -1). Das führt dann vermutlich beim SQL zu einem leeren Ergegbnis, was der Anwender gegebenenfalls falsch interpretiert. |
AW: Datentypwandlung bei Übergabe von Variablken an 'Select'
Es gibt auch noch TryStrToInt, damit kann man schon im Vorfeld prüfen, ob der String eine gültige Zahl enthält.
|
AW: Datentypwandlung bei Übergabe von Variablken an 'Select'
Moin,
ich bin halt doch ein bißchen älter. Also, die Fehlermeldung kam gar nicht vom Select-Statement, sondern aus eine anderen Zeile und dort war der Fehler glockenklar ersichtlich. Dennoch vielen Dank für die Unterstützung! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz