![]() |
Abfrageformulierung mit SQL
Hallo.
Ich muss hier ein SQL-Tutorial mit Delphi bearbeiten, habe aber keine Ahnung, wie ich das umsetzen soll. Das ist es: ![]() Und zwar soll man nun mit Befehlen wie
Code:
arbeiten, aber ich weiß nicht so recht, wie ich das umsetzen soll.
SELECT *
FROM <Tabelle> Was brauche ich dafür und wo muss ich das eingeben? Ganz normal als Source? Könnte mir es jemand vielleicht anhand eines Beispielcodes erklären, damit ich weiß, wie ich das machen muss?
Code:
Sowas war mein Ansatz, zusammen mit einem Editfeld, in das man dieses Select * from quelle eingibt, nur leider bekomme ich es nicht zum Laufen.
procedure TForm1.Button1Click(Sender: TObject);
begin Query1.Close; Query1.DatabaseName := Edit1.Text; Query1.SQL := Memo1.Lines; try Query1.Open; except ShowMessage('Fehler aufgetreten') end; end; end. Mache ich da irgendwas ganz falsch? :\ Sorry, wenn ich das ein wenig komisch erklärt habe, am besten werft ihr einen Blick auf den ersten Teil des Tutorials: ![]() |
Re: Abfrageformulierung mit SQL
es muß
Delphi-Quellcode:
heißen.
Query1.SQL.Text := Memo1.Lines;
|
Re: Abfrageformulierung mit SQL
Danke, aber das funktioniert leider nicht.
Wenn ich das dann compilieren will, zeigt er mir "Inkompatible Typen: 'String' und 'TStrings' an. Was kann man dagegen tun? |
Re: Abfrageformulierung mit SQL
Entweder
Delphi-Quellcode:
oder
Query1.SQL.Assign( Memo1.Lines);
Delphi-Quellcode:
Query1.SQL.Text := Memo1.Lines.Text;
|
Re: Abfrageformulierung mit SQL
Vielen Dank.
jetzt lässt es sich compilieren, nur die Abfrage meiner dbf-Datei funktioniert immer noch nicht. :\ Ich hab mal die Fehlermeldung geknipst: ![]() Die Oberfläche des Projekts selbst sieht so aus: ![]() Das Tutorial, nach dem ich das machen musste, war leider nicht so toll, aber ich glaube nicht, dass ich etwas vergessen habe. Oder liege ich da falsch? |
Re: Abfrageformulierung mit SQL
Der Fehler liegt wohl in dem Avfragestring.
Setzte die die Eigenschaft DatabaseName auf das Verzeichnis p:\sql und ändere die Abfrage in
SQL-Code:
dann sollte es funktionieren.
select * from project.dbf;
|
Re: Abfrageformulierung mit SQL
Ok.
ich habe nun den Database-Namen von Table1 und Query1 auf auf p:\sql geändert, aber es wird immer noch derselbe Fehler angezeigt. War das falsch, also beide Database-Namen so zu ändern? |
Re: Abfrageformulierung mit SQL
Von Table1 war doch eigentlich nie die Rede?
Vorausgesetzt es gibt eine Datei PROJEKT.DBF im Verzeichnis P:\SQL, dann funktioniert das hier:
Delphi-Quellcode:
Bei dBase-Tabellen versteht man unter DatabaseName das Verzeichnis, in dem die Tabellen abgelegt sind.
procedure TForm1.Button1Click(Sender: TObject);
begin with Query1 do begin DatabaseName := Edit1.Text; // 'P:\SQL' SQL.Text := Memo1.Lines.Text; // 'select * from projekt' try Open; Last; ShowMessage(Format('%d Datensätze', [RecordCount])); Close; except on E: Exception do ShowMessage(E.Message) end; end; end; Grüße vom marabu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:59 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