Autor Beitrag
Scherrli
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Mo 03.02.03 20:41 
Hi, also ich möchte per SQL Daten aus Access rauslesen, und diese dann in Strings zerlegen und in eine Listbox ausgeben.

zB
SELECT * FROM vereine WHERE liga = 'Bundesliga'

wie kann ich jetzt die einzelnen Strings für die Spalte sVereinsname herauskriegen?
in php gibts ja zB $row->sVereinsname

was könnte ich da mit delphi machen?

Wäre dankbar für Hilfe, ich weiß wie ichs mit FieldbyName mache, nur ist das ja doof weil ich so lange fürs durchsuchen brauch, also schleife usw. sql is ja 10mal schneller
smiegel
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 992
Erhaltene Danke: 1

WIN 7
D7 Prof., C#, RAD XE Prof.
BeitragVerfasst: Mo 03.02.03 20:56 
Hallo,

Dir bleibt gar nichts anderes übrig als mit FieldByName oder Fields die Werte auszulesen:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
  ...
  ListBox1.Clear;
  with AdoQuery1 do
  begin
    SQL.Close;
    SQL.Clear;
    SQL.Text:='SELECT sVereinsname FROM vereine WHERE (liga="Bundesliga")';
    SQL.Open;
    while not Eof do
    begin
      ListBox1.Items.Add(FieldByName('sVereinsname').AsString);
      // --> oder ListBox1.Items.Add(Fields[0].AsString);
      Next;
    end; // while
  end; // with
    ...


Außerdem ist es generell ratsam, bei einer bekannten Tabelle - im SELECT - die Feldnamen anzugeben, als mit dem Jokerzeichen "*" zu arbeiten. Nicht jede DB hat einen Server, der das "*" (weg-)optimiert.

_________________
Gruß Smiegel
Ich weiß, daß ich nichts weiß, aber ich weiß mehr als die, die nicht wissen, daß sie nichts wissen. (Sokrates)
Scherrli Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Mo 03.02.03 21:19 
ok danke, hat mir aber doch ein bisschen geholfen, habs nämlich zuerst komplizierter gemacht, danke