Для семерки могу посоветовать из бесплатных только вот этот набор
компонентов. С остальными у меня были проблемы.
Ну и механизм работы с ними следующий, объявление:
Код:
...
private
FSQLClient:TMysqlClient;
FSQLResult:TMysqlResult;
...
, подключение в БД:
Код:
function TDM.ConnectToDB(const aLg, aPs: String): boolean;
begin
FSQLClient.connect(Options.Host,aLg,aPs,Options.DataBaseName,Options.Port);
if (Length(FSQLClient.LastError) <> 0) then
Log(llCritical,FSQLClient.LastError);
Result:=FSQLClient.Connected;
end;
, получение данных:
Код:
function TDM.GetGenres(const aGenres: TGenres): boolean;
begin
FSQLResult:=FSQLClient.query('select genre_id, genre_name from cnm_shows_genres', true, result);
if Result then
begin
FSQLResult.First;
with FSQLResult do
while not Eof do
begin
aGenres.Add(StrToInt(FieldValueByName('genre_id')),String(FieldValueByName('genre_name')));
Next;
end;
FSQLResult.destroy;
end
else Log(llCritical,FSQLClient.LastError);
end;
Это вырезки из рабочего проекта, единственный недостаток этих компонентов, к ним нельзя привзяать DataSource, а значит и использовать компоненты для работы с бд.
В свое время так же искал компненты для подключения к MySQL, и потратил немало сил, к сожалению это единственный бесплатный рабочий вариант, который смог найти, работает вполне исправно.
Цитата:
Сообщение от lmikle
Еще д.б. драйвер для DBExpress (он, кажется, бесплатный).
|
Бесплатный драйвер есть, но он не работает, а тот что работает - платный. (тоже мучался, хотел через DBExpress, но там куча проблем, и конечная сводится именно к драйверу, которого в природе нет, точнее есть, для старых версий MySQL, а вот для новых только платный.