Russian Qt Forum

Qt => Работа с сетью => Тема начата: mipo от Август 25, 2005, 23:37



Название: MySQL && QT 4
Отправлено: mipo от Август 25, 2005, 23:37
Замучался я уже соединять mysql 5 с QT 4.
У меня стоит visual studio 2003 с интегрированым QT 4,
пробовал вот так соединиться :
Код:

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL3");
db.setHostName("192.168.1.61");
db.setDatabaseName("Ovation");
db.setUserName("root");
db.setPassword("655536");

if (db.open())
ui.textBrowser-append("OK");
else
ui.textBrowser-append(db.lastError().text());

на что QT отвечал Can't create TCP/IP socket (10093) QMYSQL: Unable to connect

Читал, что надо самому инсталлировать плагин или sql driver,
и даже попробовал сам это зделать используя ишодники open source версии,
но тогда стали появляться ошибки в qsql_mysql.cpp во время выполнения db.open()
Через ODBC могу соединиться с mysql, но мне нужно напрямую
Кто нибудь знает в чем дело ?
Может из-за того что использую mysql 5,который не совместим с 3 и 4 версией ?
Буду рад любой помощи.  :(


Название: MySQL && QT 4
Отправлено: Admin от Август 26, 2005, 10:26
начни с того
что поставь любой клиент mysql
и соеденись

и порт какой то странный
там типа 3306 порта


Название: MySQL && QT 4
Отправлено: mipo от Август 26, 2005, 13:19
Клиент у мея уже давно стоит и я уже работал с mysql используя mysql.h+libmysql.a
Если использовать старого клиента mysql, то server не позволяет соединитья,
то есть мне нужны другие dllьки. Если у кого получалось соединиться с mysql 5
через Qt 4 то отзовитесь


Название: MySQL && QT 4
Отправлено: mipo от Август 27, 2005, 04:38
Всё разобрался я с проблемой, если кому интересно,
то нужно перекомпилировать mysql plugin, по этому рецепту

You need to get the MySQL installation files. Run SETUP.EXE and choose "Custom Install". Install the "Libs & Include Files" Module. Build the plugin as follows (here it is assumed that MySQL is installed in C:\MYSQL):
    cd %QTDIR%\src\plugins\sqldrivers\mysql
    qmake -o Makefile "INCLUDEPATH+=C:\MYSQL\INCLUDE" "LIBS+=C:\MYSQL\LIB\OPT\LIBMYSQL.LIB" mysql.pro
    nmake
If you are not using a Microsoft compiler, replace nmake with make in the line above.

исходники для этого нужны, а в QT evaluation версии их нет,
поэтому я их переташил их с open-source версии
и после компиляции получил  2 DLL файла (qsqlmysqld.dll, qsqlmysql.dll)
Если у кого нибудь не получиться то пишите.


Название: MySQL && QT 4
Отправлено: oktogen от Октябрь 10, 2005, 13:43
У меня собралось, но из программы (клиентской) Mysql драйверы изчезли вообще. Как такое лечить?


Название: MySQL && QT 4
Отправлено: oktogen от Октябрь 11, 2005, 12:20
Инструкция сборки.

Значит под виндами делается так:
Из <MYSQLDIR>\bin копируется в system32 файл
libmySQL.dll
Затем пересобирается сырец драйвера
для vc2003 включается командная строка в ней
1)
cd <QTDIT>\src\plugins\mysqldrivers\mysql
2)
qmake -o Makefile "INCLUDEPATH+=<mySQLDIR>\INCLUDE" "LIBS+=-L<mySQLDIR>\LIB\OPT -llibmysql" mysql.pro
3)
nmake
и все.

Далее
В директории приложении создается папка sqldrivers туда копируется dll
и все. прога работает автономно.


Название: MySQL && QT 4
Отправлено: lepsai от Октябрь 11, 2005, 17:18
Уходя - гасите всех - это ценится!