Ich habe gemäß dem Tut hier einen Button mit folgendem Inhalt erstellt:
Delphi-Quellcode:
procedure Tfrm_main.SelectClick(Sender: TObject);
var
Posts: TPostEntries;
//idAuthor: String; //zum Zwischenspeichern der Verfasser-ID
query: PChar;
_myCon: PMySQL;
_myRes: PMySQL_Res;
//hier wird der gesamte Ergebnissatz gespeichert
//_mySubRes: PMySQL_Res; //benötigt, um Autor zu ermmitteln
_myRow: PMySQL_Row;
//enthält den aktuellen Datensatz
//_mySubRow: PMySQL_Row; //benötigt, um Autor zu ermmitteln
i: Integer;
begin
{...}
{Verbindung herstellen wie in Kap. 1 beschrieben}
query := '
SELECT * FROM pw_change ORDER BY account';
mysql_real_query(_myCon,
query, Length(
query));
_myRes := mysql_store_result(_myCon);
//alle Datensätze vom Server anfordern
if _myRes =
nil then
begin
ShowMessage('
Es konnten keine Datensätze zurückgebenen werden. Ursache: ' + mysql_error(_myCon));
Exit;
end;
SetLength(Posts, mysql_num_rows(_myRes));
//Posts-Array-Größe auf Anzahl der Datensätze setzen
for i := 0
to High(Posts)
do
begin
_myRow := mysql_fetch_row(_myRes);
//Datensatz abholen
Posts[i].account := _myRow[0];
//ID des Posts ist erstes Feld im Datensatz
Posts[i].passwort := _myRow[1];
//Zeitpunkt ist drittes Feld
{query := PChar('SELECT name FROM users WHERE id=' + idAuthor);
_mySubRes := mysql_store_result(_myCon);
_mySubRow := mysql_fetch_row(_mySubRes);
Posts[i].author := _mySubRow[0];
mysql_free_result(_mySubRes); //Ergebnissatz löschen }
end;
mysql_free_result(_myRes);
//Ergebnissätze löschen
{...}
{Verbindung schließen oder etwas anderes machen}
end;
Ich verbinde erst zur
DB mit den Codezielen aus diesem Tut. Nachdem Showmessage mir sagt, ich habe erfolgreich verbunden, drücke ich den Button.. und dann friert das Programm ein.
Kann mir wer sagen, was ich falsch mache?