Hy,
ich bin noch ein ziehmlicher Anfänger in der Programmierung und hoffe ihr könnt mir bei meinen Startschwierigkeiten helfen.
Ich versuche die Daten die in einer
MySQL Datenbakn stehen auszulesen und in einem Array zu speichern. Ist das überhaupt möglich?
Also zuerst habe ich nach der Anleitung von delphi-treff gearbeitet, was auch funktioniert hat.
Nun möchte ich die Daten aber nicht in einer Tabelle ausgeben sondern in einem Array zwischenspeichern.
Variable:
Delphi-Quellcode:
type
Daten = record
ID : string[150];
Titel : string[150];
Serie : string[150];
Staffel : string[150];
end;
var
Form1: TForm1;
Ergebnis : array[1..20] of Daten;
Die Verbindung steht auch soweit und auch die Abfrage ist erfolgreich:
Delphi-Quellcode:
if assigned(FResult)
then begin
if FMysql.Status<>MYSQL_STATUS_READY
then
ShowMessage('
Ein Ergebnis wurde unvollständig gelesen!');
FreeAndNil(FResult);
end;
q := '
SELECT * FROM videos WHERE Art = "3" ORDER BY Serie';
FResult := FMysql.query(q, true, ex);
if assigned(FResult)
then
ShowMessage('
Query: OK - Ergebnis gespeichert')
else
if ex
then
ShowMessage('
Query: OK - ausgeführt')
else
ShowMessage('
Query fehlgeschlagen: '+FMysql.LastError);
Nun versuch ich die Ergebnisse in dem Array Ergebnis zu speichern:
Delphi-Quellcode:
if assigned(FResult) then begin
if FResult.ResultType=rtStored then begin
FResult.First;
for i:=0 to FResult.RowsCount-1 do begin
Ergebnis[i].ID := FResult.FieldValue(0);
Ergebnis[i].Titel := FResult.FieldValue(1);
Ergebnis[i].Serie := FResult.FieldValue(2);
Ergebnis[i].Episode := FResult.FieldValue(3);
FResult.Next;
end;
FResult.RecNo := cr;
end;
end;
Und wenn ich diesen Befehl ausführe bricht der Debugger ab mit einem Prozessfehler beim lesen einer Adresse.
Ich weiß nicht ob ich den Aufbau der Abfrage richtig verstanden hab oder ob der Code 100%ig in Ordnung ist.
Ich hoffe jemand kann mir einen Rat geben
thx