AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

SQL-Abfrage

Ein Thema von Das S · begonnen am 3. Feb 2005 · letzter Beitrag vom 4. Feb 2005
Antwort Antwort
Seite 2 von 2     12   
Das S

Registriert seit: 1. Feb 2004
36 Beiträge
 
#11

Re: SQL-Abfrage

  Alt 4. Feb 2005, 08:19
Vielen Dank, genau das habe ich gemeint
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#12

Re: SQL-Abfrage

  Alt 4. Feb 2005, 08:52
Sollte das nicht ganz einfach so zu lösen sein?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  row : Integer;
begin
  Query1.Close;
  Query1.SQL.Text :=
                     'SELECT [Name], Geburtsdatum1,PartnerName, GeburtsdatumPartner' +
              + #10+ 'FROM <Tabellenname> ORDER BY [Name]';
  Query1.Open;
  StringGrid1.RowCount := Query1.RecordCount + StringGrid1.FixedRows;
  row := 1;
  While not (Query1.Eof) do
  begin
    StringGrid1.Cells[1,row] := Query1.FieldByName ('name').AsString;
    StringGrid1.Cells[2,row] := Query1.FieldByName ('Geburtsdatum1').AsString;
    Inc (row);
    StringGrid1.Cells[1,row] := Query1.FieldByName ('PartnerName').AsString;
    StringGrid1.Cells[2,row] := Query1.FieldByName ('GeburtsdatumPartner').AsString;
    Inc (row);
    Query1.Next;
  end;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von lume96
lume96

Registriert seit: 14. Sep 2003
Ort: Rognac/Marseille - Frankreich
128 Beiträge
 
Delphi 7 Professional
 
#13

Re: SQL-Abfrage

  Alt 4. Feb 2005, 09:13
Moin,

ich kenn jetzt ACCESS nicht sehr gut, habe aber vor Kurzem hier gelesen, dass ACCESS auch Stored Procedures hat.

In dem Falle, wäre das 'ne Möglichkeit.

Unter Firebird würde das in etwa so aussehen :
SQL-Code:
CREATE PROCEDURE SP10
RETURNS (
    OUT_NAME VARCHAR (50),
    OUT_DATUM DATE)
AS
declare variable tmp_nname varchar (50);
declare variable tmp_ndatum date;
declare variable tmp_pname varchar (50);
declare variable tmp_pdatum date;
BEGIN

  /* Auslesen aller Records in tmp-variablen */

  for
  select nname, ndatum,pname,pdatum from tabelle1
  into :tmp_nname, :tmp_ndatum, :tmp_pname, :tmp_pdatum
  do
  begin
       /* für jeden record die Ausgabe-variablen mit Name und Datum belegen
       und den Wert mit suspend ausgeben */

    out_name = :tmp_nname;
    out_datum = :tmp_ndatum;
    suspend;
       /* für jeden record die Ausgabe-variablen mit Partnernamen und Datum belegen
       und den Wert mit suspend ausgeben */

    out_name = :tmp_pname;
    out_datum = :tmp_pdatum;
    suspend;
  end
END
Das ganze kann dann mit einem select * from SP10 ausgelesen werden.

Tschüss,
Lutz
Lutz Meyer
  Mit Zitat antworten Zitat
Benutzerbild von Catbytes
Catbytes

Registriert seit: 7. Sep 2002
Ort: Heckendalheim
353 Beiträge
 
Delphi XE5 Enterprise
 
#14

Re: SQL-Abfrage

  Alt 4. Feb 2005, 09:30
Welche Delphi-Version hast Du?

Bei Delphi 7 Arch geht das so:

* ADO-Connection auf Access-Datenbank legen
* ADO-Query mit ADO-Connection verbinden
* SQL-Code bei ADOQuery schreiben (z.b. select * from adressen)
* DataSource mit ADO-Query verbinden
* DBGrid mit DataSource verbinden
* Doppelklick auf DBGrid
* Eigene Columns definieren und bei Fieldname eben die entsprechenden Felder auswählen


Du kannst aber das SQL-Statement auch so legen, daß eben nur die gewünschten Felder zurückgeliefert werden - dann füllt sich die DBGrid von alleine. Für Sortierung etc. eben ORDER etc. verwenden. Für Gruppierungen GROUP BY.
Catbytes
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:32 Uhr.
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