Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbank Zugriff Fehler (https://www.delphipraxis.net/142388-datenbank-zugriff-fehler.html)

SaFu 27. Okt 2009 10:15

Datenbank: FB • Version: 2.1 • Zugriff über: FBL

Datenbank Zugriff Fehler
 
Morgen,

nach dem ich hier super Hilfe bekommen habe mit dem "Aufbau" meiner Datenbank, habe ich mich jetzt versucht etwas in die Datenbank reinzuschreiben das folgendermaßen aussieht

Delphi-Quellcode:
procedure TForm1.btn2Click(Sender: TObject);
begin
  FBLTransaction1.StartTransaction;
  FBLDataset1.Open;
  //FBLDataset1.Edit;
  //FBLDataset1.Insert;
  FBLDataset1.FieldByName('PLZ').AsInteger := 99999;
  FBLDataset1.Post;
  FBLTransaction1.Commit;
  FBLDataset1.Close;
leider bekomme ich immer diesen Fehler "Exception der Klasse FBLError mit der Meldung 'Empty query' aufgetreten".

kann mir einer sagen woran das liegt? hab auch schon meinen debugger angeschmissen aber ohne erfolg.

mkinzler 27. Okt 2009 10:18

Re: Datenbank Zugriff Fehler
 
Wie sieht den die Abfrage aus?

SaFu 27. Okt 2009 10:27

Re: Datenbank Zugriff Fehler
 
Ich habe bis jetzt nur versucht was reinzuschreiben

Alfredo 27. Okt 2009 11:10

Re: Datenbank Zugriff Fehler
 
Bevor Du etwas hineinschreiben kannst, musst Du das Dataset erst
einmal anlegen und dazu muss ein SQL-Befehl
im Query stehen oder der SQL-Befehl steht im Programm.

Gruß
Alfred

schlecki 27. Okt 2009 11:18

Re: Datenbank Zugriff Fehler
 
Zitat:

Zitat von fuknersascha
Morgen,

nach dem ich hier super Hilfe bekommen habe mit dem "Aufbau" meiner Datenbank, habe ich mich jetzt versucht etwas in die Datenbank reinzuschreiben das folgendermaßen aussieht

Delphi-Quellcode:
procedure TForm1.btn2Click(Sender: TObject);
begin
  FBLTransaction1.StartTransaction;
  FBLDataset1.Open;
  //FBLDataset1.Edit;
  //FBLDataset1.Insert;
  FBLDataset1.FieldByName('PLZ').AsInteger := 99999;
  FBLDataset1.Post;
  FBLTransaction1.Commit;
  FBLDataset1.Close;
leider bekomme ich immer diesen Fehler "Exception der Klasse FBLError mit der Meldung 'Empty query' aufgetreten".

kann mir einer sagen woran das liegt? hab auch schon meinen debugger angeschmissen aber ohne erfolg.

Scheinbar hat dein FBLDataSet1 kein SQL-Statement, welches ausgeführt werden kann.

Besser wäre es, wenn du hier nicht den Table-Ansatz verwenden würdest, sondern direkt, das passende SQL erzeugst.
Delphi-Quellcode:
  FBLDataSet1.SQL.Text := 'insert into <TABLE> (ID, PLZ) values (:ID, :PLZ)';
  FBLDataSet1.Prepare;

  FBLDataSet1.ParamByName('ID').AsInteger := 1;
  FBLDataSet1.ParamByName('PLZ').AsString := '99999';
  FBLDataSet1.ExecSQL;
Es werden hier auch gleich Parameter verwendet, die das Risiko, dass deine Anwendung per SQL-Injektion gehackt wird, auch gleich verringern, bzw. sogar eliminieren.

SaFu 27. Okt 2009 12:20

Re: Datenbank Zugriff Fehler
 
Doch ein SQL Statment hat es, aber ich denke ich sollte eine andere Komonente benutzen.

Denn damit geht es auch nicht egal wie ich es drehe.

DeddyH 27. Okt 2009 12:44

Re: Datenbank Zugriff Fehler
 
http://www.delphi-treff.de/tutorials...-und-firebird/

SaFu 27. Okt 2009 13:51

Re: Datenbank Zugriff Fehler
 
Danke hab sie mal installiert.

Kann es sein das es da keine Datasource mehr gibt?

DeddyH 27. Okt 2009 13:55

Re: Datenbank Zugriff Fehler
 
IIRC kannst Du eine Standard-Datasource nehmen.

SaFu 27. Okt 2009 16:00

Re: Datenbank Zugriff Fehler
 
Liste der Anhänge anzeigen (Anzahl: 1)
So bin nochmal da.

Ich komm einfach nicht weiter, ich habe mir jetzt die ZEOS mal installiert und auch schon etwas probiert aber ich bekomm es einfach nicht hin mir irgend etwas anzeigen zu lassen.

Ich habe mir auf die Form gelegt eine:

- ZConnection
- ZQuery
- ZTable
- Datasource
- DBGrid

jetzt habe ich alles in der ZConnection wie im Bild anhang eingestellt und die Verbindung schein zu funktionieren aber wie verknüpft man den rest jetzt richtig und muss man noch etwas eingeben, hab schon einiges versucht aber es will einfach nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:02 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz