Autor Beitrag
Procedure
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 32

win 95, win 98, win 2000, win xp, linux
D4 client-server, D5 prof, D7 Prof + Pers
BeitragVerfasst: Mo 15.07.02 00:56 
Hi @ll!!!!

ich hab jetzt mal mit sql angefangen!
aber ich verstehe nicht so ganz, wie das mit der query funzt!
hab also ne query und ne db!
hab den sql string eingefügt:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
 
sqlstring := 'select * from meinedb where alter=30';
with query1 do
begin
sql.clear;
sql:= sqlstring;
sql.open;


aber jetzt versteh ich nicht, wo das ergebnis aus der sql abfrage hingeschrieben wird! ob in ne variable oder so, und wie man darauf zugreifen kann!

kann mir jemand mal das erklären?
hab ja schon gesucht, aber nirgends steht was drüber!

bin echt dankbar für alle antworten!

gruß, matthias
wwerner
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 185



BeitragVerfasst: Mo 15.07.02 07:06 
catweasel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 487
Erhaltene Danke: 1

Win 7 64bit
Delphi 7 Second Sedition V7.2
BeitragVerfasst: Mo 15.07.02 17:13 
Titel: DataSource...
du hängst ein dbgrid z.b. an eine datasource.
Die DataSet eigenschaft der dadasource ist dann entweder die TTable komponente oder die TQuery komponente (in diesem fall zeigt das grid das ergebnis des querys an, eben des datasets seiner datasource...

hoff hat geholfen,bin tippfaul heute...
CU
Catweasel
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 19.07.02 16:59 
Hi! Was catweasel geschrieben hat, ist auf jeden Fall die beste und gebräuchliste Methode. Du kannst die Datensätze in einem Query aber auch einzeln durchlaufen und auslesen:

Beispiel: ein Query, welches die Spalten "Vorname" und "Nachname" enthält.

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
//Irgendwas ...
VAR vorname, nachname : ARRAY OF String;
//Irgendwas ...

procedure auslesen;
begin

  SetLength(vorname,0);
  SetLength(nachname,0);
  
  while not query.eof do
  begin
    SetLength(vorname,High(vorname)+2);
    SetLength(nachname,High(nachname)+2);
    
    vorname[High(vorname)]:=query.FieldByName('vorname').AsString;
    nachname[High(nachname)]:=query.FieldByName('nachname').AsString;

    query.next;
  end;
end;


Ich habe den Code nicht getestet, es sind wahrscheinlich also noch einige kleinere Bugs drin, aber so im Großen und Ganzen sollte es stimmen.

ABER: diese Methode ist nur in einigen wenigen Fällen sinnvoll, aber ich dachte, es kann nicht schaden, sie zu erwähnen.

MfG,
Peter

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".