Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi 2 Tabellen gleichzeitig abfragn (https://www.delphipraxis.net/16854-2-tabellen-gleichzeitig-abfragn.html)

yoshie 24. Feb 2004 16:40


2 Tabellen gleichzeitig abfragn
 
HI Leute

normalerweise kann man doch bei mysql 2 taellen oder mehr abfragen.

z.b.

select * from tabelle1,tabelle2

mein problem ist, das dies in dephi nciht geht

ich gebe bei der querykompo ein

select * from tabelle1,tabelle2

nun will ich in einer stringgrid das ganze ausgeben lassen

also meinetwegen spalte 1 sollen alle namen aus tabelle1 stehen, in spalte2 alle tage aus tabelle2.

dies sollte ja eigentlich über

tabelle1.namen und tabelle2.tage funktionieren aber delphi bringt da immer eine fehlermeldung.

ich benutze die zeos komponenten.

kann mir vielleicht jemand helfen????

czapie 24. Feb 2004 16:44

Re: 2 Tabellen gleichzeitig abfragn
 
Kannst du vielleicht mal dein gesamtes SQL-Query posten?

Czapie.

yoshie 24. Feb 2004 21:22

Re: 2 Tabellen gleichzeitig abfragn
 
ja sicher doch hier ist die procedure, so funktiniert sie halt net

Delphi-Quellcode:
procedure TZimmeranzeigen.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
var k,i,j: byte;

begin
administration.anmelden;
hauptfenster.qrmain.SQL.text:='';
hauptfenster.qrmain.SQL.text:='select * from relation';
hauptfenster.qrmain.open;
k := hauptfenster.qrmain.RecordCount;

anzeige.show;
for i:=0 to anzeige.StringGrid1.ColCount do
for j:=0 to anzeige.StringGrid1.RowCount do
anzeige.stringgrid1.Cells[i,j]:='';
for i:=0 to anzeige.StringGrid2.ColCount do
for j:=0 to anzeige.StringGrid2.RowCount do
anzeige.stringgrid2.Cells[i,j]:='';
for i:=0 to anzeige.StringGrid3.ColCount do
for j:=0 to anzeige.StringGrid3.RowCount do
anzeige.stringgrid3.Cells[i,j]:='';
j:=1;
begin
for i := 1 to k do
begin
    if
(hauptfenster.qrMain.FieldByName('htzid').asstring=stringgrid1.cells[0,arow]
) then
begin
anzeige.stringgrid1.cells[0,0]:='Name';
anzeige.stringgrid1.cells[1,0]:='vorname';
anzeige.stringgrid1.cells[2,0]:='Aufgaben';
anzeige.stringgrid1.cells[3,0]:='Datum';
anzeige.stringgrid1.cells[0,j]:=hauptfenster.qrMain.FieldByName('hid').AsString;
anzeige.stringgrid1.cells[2,j]:=hauptfenster.qrMain.FieldByName('aid').AsString;
anzeige.stringgrid1.cells[3,j]:=hauptfenster.qrMain.FieldByName('datum').AsString;
inc(j);
end;
hauptfenster.qrmain.next;
end;
hauptfenster.qrmain.Close;
 end;

begin;
hauptfenster.qrmain.SQL.text:='';
hauptfenster.qrmain.SQL.text:='select * from hausmeister';
hauptfenster.qrmain.open;
k := hauptfenster.qrmain.RecordCount;
j:=1;
 for i:=1 to k do
     begin
         if (anzeige.stringgrid1.cells[0,j]=hauptfenster.qrMain.FieldByName('hid').asstring)then
      begin
          anzeige.stringgrid1.cells[0,j]:=hauptfenster.qrMain.FieldByName('name').asstring;
      anzeige.stringgrid1.cells[1,j]:=hauptfenster.qrmain.fieldbyname('vorname').asstring;
      inc(j);
       end;
       hauptfenster.qrmain.next;
      end;
    hauptfenster.qrmain.close;
end;

hauptfenster.qrmain.SQL.text:='';
hauptfenster.qrmain.SQL.text:='select * from aufgaben';
hauptfenster.qrmain.open;
j:=1;
for i:=1 to k do
begin
   if (anzeige.stringgrid1.cells[2,j]=hauptfenster.qrMain.FieldByName('aid').asstring )then
      begin
      anzeige.stringgrid1.cells[2,j]:=hauptfenster.qrMain.FieldByName('aufgabe').asstring;
      inc(j);
      end;
hauptfenster.qrmain.next;
end;
hauptfenster.qrmain.close;
 end;

 end.
uund ich möchte halt alles über die erste query öffnung machn also ncht egal schlißen un öffnen


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