Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Daten in DBGrid? (https://www.delphipraxis.net/33063-daten-dbgrid.html)

Leon de Bar 1. Nov 2004 08:59


Daten in DBGrid?
 
Diese Datenbanken machen mich noch ganz wuschig. Steh mal wieder im Wald und merk es wahrscheinlich nicht.

Zur laufzeit...


Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
begin
  DBCheck;
  dbName := dataDir+'\p2vvw.mdb';
  DataSource:=                               // Link zur DB setzen
    'Provider=Microsoft.Jet.OLEDB.4.0' +
    ';Data Source=' + dbName +
    ';Persist Security Info=False';
  ADOConnection1.ConnectionString := DataSource;
  ADOConnection1.LoginPrompt := False;       // Kein Loginfenster
  ADOCommand1.Connection := ADOConnection1;  // Connect zur DB hersellen

  ADOQuery1.Active:=false;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Text :=
    'SELECT Mitgliedsnummer, Vorname, Name, Strasse, Land, PLZ, Ort, ' +
      'Tel_1, Fax_1, Tel_2, Fax_2, Handy, email, ' +
      'GebDat, ' +
      'Saldo, ' +
      'Eintritt, ' +
      'Spielernummer, Trikot, Spielerpos FROM ' +
      'ID, Mitglied, Kontakt, GebDatList, MG_Saldenliste, Mitgliedsstatus, ' +
      'Spielerdaten';
  ADOQuery1.Active:=true;

end;
ich erstelle hier also eine verbindung und setze eine Query. Verdingung funzt, Tabelle zeigt auch brav die Überschriftenleiste aber der Datensatz bzw. die daten dazu werden nicht gezeigt. muss ich noch ne abfrage schreiben? :gruebel:

kiar 1. Nov 2004 09:36

Re: Daten in DBGrid?
 
du musst noch durch deine abfrage durchgehen.
Delphi-Quellcode:
while not AdoQurey1.eof do begin
....dein DBGrid füllen
next;
end;
raik

Leon de Bar 1. Nov 2004 09:41

Re: Daten in DBGrid?
 
hi, und was meinst du mit dein DBGrid füllen? wie?

mikhal 1. Nov 2004 09:48

Re: Daten in DBGrid?
 
Ist das da oben dein SQL-Statement? Wenn ja, ergibt das eine tolle Kreuztabelle, die entweder noch läuft und deshalb kein Ergebnis anzeigt. Es kann aber auch sein, daß in irgendeiner deiner Tabellen keine Daten enthalten sind, dann ist das Eregbnis wohl auch leer.

Grüße
Mikhal

Leon de Bar 1. Nov 2004 09:52

Re: Daten in DBGrid?
 
Naja, einige Felder der Tabellen sind leer...

wie fülle ich das DBGrid?

Leon de Bar 1. Nov 2004 10:05

Re: Daten in DBGrid?
 
@mikhal:

jo, das war es wohl... ich habe nun mal spassenshalber alles ausgefüllt. du hattest vollkommen recht. einige Tabellen waren bei mir tatsächlich noch leer. Und somit hat er mir nichts angezeigt.

:thumb: ein Newbie dankt *mit tiefer Verbeugung*

mikhal 1. Nov 2004 14:09

Re: Daten in DBGrid?
 
Worauf ich eigentlich hinaus wollte ist: Du verwendest mehrere Tabellen in deiner FROM-Klausel, stellts aber nirgendwo Joins her. Deshalb wird hier eine Kreuztabelle erzeugt, in der alle Kombinationen gefüllt werden. Entweder mußt du in einer Where-Klausel die entsprechenden Joins herstellen (Foreign Key = Primary Key, siehe oben) oder mit Inner- und/oder Outer-Joins in der FROM-Klausel arbeiten.

Grüße
Mikhal


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