Доброго дня. Есть необходимость подключиться к MySQL из службы.
1. Скачан драйвер для MySQL
2. Создан системный DNS
3. На форму положено ADOConnection и ADOQuery
4. В ADOConnection забита ConnectionString (тест проходит успешно), LoginPromt := False; В ADOQuery стоит Connection := AdoConnection.
Все как обычно.
Но этот код - не работает, глушит службу и ОС ее выключает :
Код:
procedure TTTsRTM.LoadSQL;
var Answer : TStringList;
begin
Answer := TStringList.Create;
Answer.Add('Hello');
Q.SQL.Clear;
Q.SQL.Text := 'SELECT * FROM referent';
Q.Open; // Вот тут программа падает
while NOT Q.Eof do begin
Answer.Add(Q.FieldValues['R.ObjectName'] + ',' + Q.FieldValues['t8.AValue'] + ',' + Q.FieldValues['t8.Stt']);
Q.Next;
end;
Answer.SaveToFile('c:\logsss.txt');
Q.Close;
end;
Что я делаю не так?