![]() |
FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Hallo Delpiianer,
Im Zusammenhang mit einer SQL-Datenbank in meiner Anwendung unter Andriod tritt folgender Fehler auf: - unreognized Token "]" - Habe die Anwendung mit Delphi Alexandra (FMX) erstellt. Anwendung funktioniert auf dem Smartphone Samsung gut, außer beim Speichern in die Datenbank. Da kommt der obengenannte Fehler. Verwende die LiteDac-Komponente von Devart zum Einbinden der SQL. Habe bei Devart schon mal nachgefragt, aber noch keine Antwort erhalten. Vielleicht weiß einer von Euch woran es liegen könnte oder ist es ein Problem der Komponente selbst? Danke im Voraus für eure Hilfe jmich |
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
.. kannst Du bitte die Speicherroutine zeigen?
Grüße Klaus |
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Hier meine Routine:
Delphi-Quellcode:
Gruß
procedure Tfirmdaten.btn_firmpostClick(Sender: TObject);
begin firmdaten.firmConnection.Database := System.IOUtils.TPath.GetHomePath + PathDelim +'firmpv.dbp'; // db3 nur umbenann in dbp try firmdaten.firmConnection.Connected := True; firmdaten.firmConnection.Options.Direct := True; firmQuery.Connection := firmdaten.firmConnection; with firmQuery do begin Close; SQL.Clear; SQL.Text := 'INSERT INTO [firmenliste] '+ ' ( '+ ' [firmname],[firmstrasse],[firmplz],firmort],'+ ' [firmgewerk],[firmkontakt],[firmchef]'+ ' )'+ ' Values ('+ ' :frmnam, :frmstr, :frmplz, :frmort, '+ ' :frmgew, :frmkon, :frmchf '+ ' )'; ParamByName('frmnam').AsString := ed_firmname.Text; ParamByName('frmstr').AsString := ed_firmstrasse.Text; ParamByName('frmplz').AsString := ed_firmplz.Text; ParamByName('frmort').AsString := ed_firmort.Text; ParamByName('frmgew').AsString := cb_firmgewerk.Selected.Text; ParamByName('frmkon').AsString := ed_firmkontakt.Text; ParamByName('frmchf').AsString := ed_firmchef.Text; ExecSQL(); end; finally ShowMessage('Datensatz wurde neu angelegt !'); end; firmdaten_laden; end; Jmich |
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Zitat:
|
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Vielen Dank für die Hilfe.
Vor lauter Bäumen sieht man diesen kleinen Fehler nicht. Nochmals vielen Dank jmich |
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
...ich hätte schwören können das das am WITH liegt. :duck: :wink:
|
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Aber die Meldung, die im finally gezeigt wird, sollte doch vor dem finally gemacht werden, denn egal ob ein Fehler (Exception) auftritt oder nicht, kommt diese Meldung doch so immer!!!
|
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Crosspost
![]() |
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Frage an BerndS
Wo soll die Showmessage nach deiner Meinung hin? Bin gerade beim Lernen und über gute Tipps freue ich mich sehr. Gruß Jmich |
AW: FMX - Beim speichern in eine SQL-Datenbank Fehlermeldung
Wie ist es denn so (einfach heruntergetippt, deshalb ungetestet):
Delphi-Quellcode:
function Mask(const Fieldname: string): string;
begin Result := Format('[%s]', [Fieldname]); end; // Es sieht so aus, als sei firmdaten die globale Form-Variable, deshalb besser weglassen // oder self verwenden procedure Tfirmdaten.btn_firmpostClick(Sender: TObject); begin firmConnection.Database := System.IOUtils.TPath.GetHomePath + PathDelim + 'firmpv.dbp'; // db3 nur umbenann in dbp try firmConnection.Connected := True; firmConnection.Options.Direct := True; firmQuery.Connection := firmConnection; firmQuery.Close; firmQuery.SQL.Text := Format('INSERT INTO %s(%s, %s, %s, %s, %s, %s, %s) ' + ' Values (:frmnam, :frmstr, :frmplz, :frmort, :frmgew, :frmkon, :frmchf)', [Mask('firmenliste'), Mask('firmname'), Mask('firmstrasse'), Mask('firmplz'), Mask('firmort'), Mask('firmgewerk'), Mask('firmkontakt'), Mask('firmchef')]); firmQuery.ParamByName('frmnam').AsString := ed_firmname.Text; firmQuery.ParamByName('frmstr').AsString := ed_firmstrasse.Text; firmQuery.ParamByName('frmplz').AsString := ed_firmplz.Text; firmQuery.ParamByName('frmort').AsString := ed_firmort.Text; firmQuery.ParamByName('frmgew').AsString := cb_firmgewerk.Selected.Text; firmQuery.ParamByName('frmkon').AsString := ed_firmkontakt.Text; firmQuery.ParamByName('frmchf').AsString := ed_firmchef.Text; firmQuery.ExecSQL(); ShowMessage('Datensatz wurde neu angelegt !'); except on E: Exception do ShowMessage('Fehler beim Anlegen des Datensatzes: ' + E.Message); end; firmdaten_laden; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:23 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