Autor Beitrag
matze.de
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 576

Win95, Win98 SE, WinXp Prof SP2
D7P, D8P, FPC2.0
BeitragVerfasst: Mo 29.05.06 22:41 
Hi,

Ich benutze FireBird 1.5 Embedded mit den ZEOS Komponenten. Ich habe ein, für mich, sehr seltsames Problem. Ich habe eine DBLookUpListBox und ein DBEdit Die mit den richtigen Feldern und Datasets verbunden sind. Diese zeigen bei mir auch Daten an. Wenn ich aber nun in meinem DBEdit einen Datensatzt, welchen ich aus der ListBox gewählt habe editiere und auf meinen "ÜbernehmenButton"
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
Procedure TFahrerForm.Btn_FahrerOkClick(Sender: TObject);
Begin
    MainForm.Dataset.ApplyUpdates;
    MainForm.Dataset.CommitUpdates;
    Close;
End;
drücke, bekomme ich die Fehlermeldung "SQL Error: Dynamic SQL Error SQL Error Code:-104 Unexpected End of Command. Error Code:-104 Invalid Token"

Mein Programm führt vom Programmstart bis zum Fehler folgenden relevanten Source aus:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
    Connection := TZConnection.Create(self);

    Dataset := TZQuery.Create(self);
    Dataset.Connection := FConnection;
    //Dataset.RequestLive := True;
    Dataset.CachedUpdates := True;
    Dataset.ReadOnly := False;

    MyDataSource.DataSet := FDataset;

    UpdateDataset := TZUpdateSQL.Create(self);
    Dataset.UpdateObject := FUpdateDataset;

    Connection.Protocol := 'firebird-1.5';
    Connection.Database := GetHomeDir + 'MYDB.FDB';
    Connection.User := 'USER';
    Connection.Password := 'PW';
    Connection.ReadOnly := False;
    Connection.TransactIsolationLevel := tiReadCommitted;

    Connection.Connect;

    DBLkU_Fahrer.ListSource := MainForm.MyDataSource;
    DBLkU_Fahrer.ListField := 'FAHRERNAME';
    DBLkU_Fahrer.KeyField := 'FID';
    DBEd_Name.DataSource := MainForm.MyDataSource;
    DBEd_Name.DataField := 'FAHRERNAME';

    Dataset.SQL.Text := 'SELECT * FROM Fahrer ORDER BY FID ASC;';
    Dataset.Open; // Meine Daten werden angezeigt

    // Hier Editiere ich meine Daten in der DBEdit Kompo

    Dataset.ApplyUpdates; // Hier kommt die Exception
    Dataset.CommitUpdates;
    [...]



mfg matze

_________________
si tacuisses, philosophus mansisses.


Zuletzt bearbeitet von matze.de am Di 30.05.06 18:01, insgesamt 1-mal bearbeitet
raiguen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 374

WIN 2000prof, WIN XP prof
D7EP, MSSQL, ABSDB
BeitragVerfasst: Di 30.05.06 15:28 
Moin :)
ausblenden Quelltext
1:
    Dataset.SQL.Text := 'SELECT * FROM Fahrer ORDER BY FID ASC;';					

Würde so auf den ersten Blick sagen, dass das ; die Ursache des Fehlers sein könnte :gruebel: Macht der Gewohnheit, am Ende einer Zeile bzw Statemnets ein Semikolon zu setzen (ist mir auch schon passiert...) ;)
matze.de Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 576

Win95, Win98 SE, WinXp Prof SP2
D7P, D8P, FPC2.0
BeitragVerfasst: Di 30.05.06 17:54 
user profile iconraiguen hat folgendes geschrieben:
Moin :)
ausblenden Quelltext
1:
    Dataset.SQL.Text := 'SELECT * FROM Fahrer ORDER BY FID ASC;';					

Würde so auf den ersten Blick sagen, dass das ; die Ursache des Fehlers sein könnte :gruebel: Macht der Gewohnheit, am Ende einer Zeile bzw Statemnets ein Semikolon zu setzen (ist mir auch schon passiert...) ;)


Leider war es das nicht :/ Er zeigt die Daten des Select-Statements ja auch richtig an, nur wenn sie editiert worden sind und dann per
ausblenden Delphi-Quelltext
1:
2:
Dataset.ApplyUpdates;
Dataset.CommitUpdates;

gespeichert werden sollen, bekomme ich die Exception.

mfg matze

_________________
si tacuisses, philosophus mansisses.
matze.de Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 576

Win95, Win98 SE, WinXp Prof SP2
D7P, D8P, FPC2.0
BeitragVerfasst: Di 30.05.06 18:38 
Ich glaube ich habe den Fehler nun gelöst, weiß aber immernoch nicht warum er auftritt vllt könnt ihr mir das erklären :) Ich hab einfach die TUpdateQuery rausgenommen, da sie in meinem Quelltext noch unnötig war, und siehe da, es funktioniert.

mfg matze

_________________
si tacuisses, philosophus mansisses.