Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Suchfunktion in einem DBGrid (https://www.delphipraxis.net/186491-suchfunktion-einem-dbgrid.html)

Perlsau 8. Sep 2015 11:59

AW: Suchfunktion in einem DBGrid
 
Zitat:

Zitat von Krupi (Beitrag 1315089)
... jedoch ohne gutes ergebnis

Was bedeuted denn "ohne gutes ergebnis" genau?

Zitat:

Zitat von Krupi (Beitrag 1315089)
jetzt bin ich total planlos

Jetzt erst :?: :stupid:

Zitat:

Zitat von Krupi (Beitrag 1315089)
könnte mir vllt jemand ein beispiel geben mit code, wie ich in meiner anwendung auf meine datenbank zugreife und somit eine abfrage stellen kann?

Kannst du mit meinem Beispiel wirklich gar nichts anfangen? Dort wird doch ganz konkret gezeigt, wie man SQL-Befehle zusammensetzt (könnte man sicher noch optimieren) und eine Query an die Datenbank absetzt. Falls du mich damit beauftragen willst, deinen Code zu schreiben: Die Stunde kostet 50 Euro, Auftragsannahme nur gegen Vorauszahlung.

Im Grunde sagst du hier ja nur eines: "Egal was ihr mir hier erzählt, ich blick das alles nicht." Wenn das so richtig interpretiert ist, dann empfiehlt es sich, erst einmal mit leichteren Aufgaben zu beginnen und später, wenn die Grundlagen soweit erarbeitet und gefestigt wurden, schwierigere Themen wie Datenbankentwicklung anzugehen.

nahpets 8. Sep 2015 12:01

AW: Suchfunktion in einem DBGrid
 
Suchst Du sowas in der Art?
Delphi-Quellcode:
procedure Tform1.ButtonSuchmalwasClick(Sender: TObject);
var
  sSuchbegriff : String;
begin
  // Wenn es eine separate Eingabe sein soll:
  sSuchbegriff := InputBox('Nach Namen suchen','zu suchender Name:','');
  if sSuchbegriff <> '' then begin
    tabelle.Locate('Name',sSuchbegriff,[loCaseInsensitive,loPartialKey]);
  end;
end;

procedure Tform1.ButtonSuchmalwasClick(Sender: TObject);
begin
  // Suchen, was im Editfeld steht:
  if Editfeld.Text <> '' then begin
    tabelle.Locate('Name',Editfeld.Text,[loCaseInsensitive,loPartialKey]);
  end;
end;

procedure Tform1.ButtonSuchmalwasClick(Sender: TObject);
begin
  // Nur die Sätze anzeigen, bei denen der Name mit der Eingabe im Editfeld übereinstimmt.
  tabelle.Filtered    := False;
  tabelle.Filter      := Format('Name = %s ',[QuotedStr(Editfeld.Text]);
  tabelle.Filtered    := True;
end;
oder eher eine neue Abfrage für die Datenbank?
Delphi-Quellcode:
procedure Tform1.ButtonSuchmalwasClick(Sender: TObject);
begin
  qry.Close;
  qry.SQL.Text := Format('select * from Tabelle where name like %s',[QuotedStr(Editfeld.text]);
  qry.Open;
end;

mkinzler 8. Sep 2015 12:10

AW: Suchfunktion in einem DBGrid
 
Zitat:

oder eher eine neue Abfrage für die Datenbank?
markieren
Delphi-Quellcode:
Delphi-Quellcode:
procedure Tform1.ButtonSuchmalwasClick(Sender: TObject);
begin
  qry.Close;
  qry.SQL.Text := Format('select * from Tabelle where name like %s',[QuotedStr(Editfeld.text]);
  qry.Open;
end;

Dann würde ich mit einer parametrisierten Abfrage arbeiten

SQL-Code:
select
  <Feldliste>
from
  Tabelle
where
  (suchbegriff = '') or (name like :suchbegriff);
Delphi-Quellcode:
  if Trim(sSuchbegriff) <> '' then begin
    qry.ParamByName('suchbegriff').Value := '%'+Trim(sSuchBegriff)+'%';
  else
    qry.ParamByName('suchbegriff').Value := '';
  qry.Refresh;


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:15 Uhr.
Seite 2 von 2     12   

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 by Thomas Breitkreuz