Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Nur gesuchte Datensätze im DBGrid anzeigen (https://www.delphipraxis.net/167534-nur-gesuchte-datensaetze-im-dbgrid-anzeigen.html)

Gollum 4. Apr 2012 11:28

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Hallo,

ändere

Zitat:

Zitat von m-werk (Beitrag 1160125)
Code:
ADOQuery1.SQL.parameterbyname('name').asstring:=EditSearch.Text;

in

Delphi-Quellcode:
AdoQuery1.Parameters.ParamByName('name').Value := EditSearch.Text;
Das hat bereits mkinzler gepostet.

m-werk 4. Apr 2012 11:30

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Ich komm nicht dahinter :(

mkinzler 4. Apr 2012 11:33

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Zitat:

Zitat von m-werk (Beitrag 1160131)
Ich komm nicht dahinter :(

Die Methode heisst ParamByName() und nicht ParameterByName() und ist Teil der Klasse TParameter (Parameter) und nicht Teil der StringListe (SQL)

m-werk 4. Apr 2012 11:35

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Diese änderung hab ich schon gemacht, aber es kommt jetzt trotzdem eine Fehlermeldung:

Exception-Klasse EDatabaseError mit Meldung "ADOQuery1: Parameter 'name' nicht gefunden".

Diese Fehlermeldung tritt hier in der ADOQuery1.Parameters..... auf.

Code:
procedure TForm1.EditSearchExit(Sender: TObject);
begin
  ADOQuery1.Parameters.ParamByName('name').Value := EditSearch.Text;
  if ADOQuery1.Active then
    ADOQuery1.Refresh
  else
    ADOQuery1.Open;
end;

mkinzler 4. Apr 2012 11:40

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Hast du vorher die parametrisierte Abfrage zugewiesen?

Bummi 4. Apr 2012 11:41

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Delphi-Quellcode:
  ADOQuery1.Close;
  ADOQuery1.SQL.Text:='select * from kundendaten where nachname like :name';
  ADOQuery1.Parameters.ParseSQL(ADOQuery1.SQL.Text,true);
  ADOQuery1.Parameters.parambyname('name').Value:='test';

mkinzler 4. Apr 2012 11:42

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Eine einmalige Zuweisung/Vorbereitung sollte aber reichen.

m-werk 4. Apr 2012 12:03

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Gehhh, das kann doch wohl nicht sein.

Das ist jetzt mein Button.
Code:
procedure TForm1.BtnSearchClick(Sender: TObject);
begin
  ADOQuery1.Close;
  ADOQuery1.SQL.Text:='select * from kundendaten, where nachname like :name';
  ADOQuery1.Parameters.ParseSQL(ADOQuery1.SQL.Text,true);
  ADOQuery1.Parameters.ParamByName('name').Value := EditSearch.Text;
  ADOQuery1.Open;
  if ADOQuery1.Active then
   ADOQuery1.Refresh
  else
    ADOQuery1.Open;
end;
Wenn ich nun einen Wert in das Feld eingebe und auf suchen klicke, kommt folgende Fehlermeldung:

Im Projekt Projekt1.exe ist eine Exception der Klasse EOleException mit der Meldung 'Syntaxfehler in FROM-Klausel' aufgetreten.
Anhalten - Fortsetzen - Hilfe

m-werk 4. Apr 2012 12:05

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
SORRY, ich nehme alles zurück.

Hab den Fehler entdeckt! war ein , drinn

Jetzt funktioniert die suche wie sie soll.

DANKE FÜR DIE HILFE

mkinzler 4. Apr 2012 12:05

AW: Nur gesuchte Datensätze im DBGrid anzeigen
 
Da ist auch ein Komma zu viel.

Zudem Reicht es die Abfarge einmal zuzuweisen und später nur den Parameter neu zu setzen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:33 Uhr.
Seite 2 von 5     12 34     Letzte »    

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