Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL Interbase Daten Filtern oder Suchen ??? (https://www.delphipraxis.net/53922-sql-interbase-daten-filtern-oder-suchen.html)

wlfmario 25. Sep 2005 14:38

Datenbank: Interbase • Zugriff über: Interbase

SQL Interbase Daten Filtern oder Suchen ???
 
Hallo Profis,

ich versuche mich grade mal mit der Interbase Datenbank und Delphi zu verständigrn :-)
Ich habe mir ein Datenmodul (DM) mit den drei Komponenten (IBTransaction(IBTrans), IBDatabase(IBData) und IBDataSet (IBKunde)).
Und für die Formulare z.b. DBDrid je ein DataSource.
Das klappt so weit alles ganz gut ob Anlegen der Daten oder Editieren bzw. Löschen. Ab leider eis ich nicht wie ich jetzt Daten Sotieren kann per SQL ! BEISPIEL: Die Datenbank hat eine eine Tabelle wo AdressDaten gespeichert werden. (KDID, NAME, Vorname, Strasse, PLZ, ORT).
Die KDID Wird Automatisch mit nummern gefüllt die von eins an fortlaufend sind und ist von der Tabelle der Primary Key.
Jetzt möchte ich eine mir über DBGrid alle Adressen Anzeigen lassen die Z.B. PLZ = 12345 haben. Das Ganze möchte ich über ein Edit Feld eingeben.
Wie kann ich jetzt die Adressen Anzeigen lassen und Welche Komponente benötige ich noch ? Kann ich dies auch mit dem Vorhandenen Komponenten machen ?

Danke Schon einmal für Eure Antworten.

Jelly 25. Sep 2005 15:36

Re: SQL Interbase Daten Filtern oder Suchen ???
 
Bemüh doch mal die Suchfunktion hier im Forum, da wirst du sicherlich einiges finden.

Aber ganz kurz, damit du durchstarten kannst:
TIbDataset hat die Eigenschaft SelectSQL, dort musst du deine Abfrage entsprechend formulieren,

SQL-Code:
select * from Adressdaten where PLZ = '12345'
oder du arbeitest mit Parametern:
SQL-Code:
select * from Adressdaten where PLZ = :PLZ
und passt das Ganze in Delphi an, z.B. im OnChange Event deines Editfeldes.

Delphi-Quellcode:
procedure TForm1.Edit1Change(Sender: TObject);
begin
     IbKunde.close ;
     IbKunde.ParamByName('PLZ').AsString := (Sender as TEdit).text ;
     IbKunde.open ;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:07 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