Russian Qt Forum
Ноябрь 24, 2024, 11:57 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема с SQL соединением  (Прочитано 2345 раз)
Snak2013
Гость
« : Февраль 13, 2017, 11:06 »

Доброго времени суток, пытаюсь подключиться к MYSQL серверу делаю это так:

Код:
QSqlDatabase *DB = new QSqlDatabase();
DB->addDatabase("MYSQL","MyBD");
    DB->setHostName("localhost");
    DB->setDatabaseName("TestDelphi");
    DB->setUserName("sa");
    DB->setPassword("sa");
    DB->open();
    QSqlQuery *query = new QSqlQuery(*DB);
    bool error = query->exec("SELECT * FROM Products");
    if(!error)
    {
       QString err = query->lastError().text();
       QMessageBox::warning(this,"Ошибка",err,QMessageBox::Close);
    }
    else
    {
        while (query->next())
        {
            int ID = query->value(0).toInt();
            QString Product = query->value(1).toString();
        }
    }
    delete query;
    DB->close();

При попытки выполнить запрос происходит ошибка загрузки драйвера пишет что драйвер не загружен. Погуглив узнал что драйвер надо собрать. Нашел статью http://doc.qt.io/qt-5.7/sql-driver.html#qmysql в статье написано чтобы собрать драйвер надо выполнить следующее:
Код:
cd %QTDIR%\qtbase\src\plugins\sqldrivers\mysql
qmake "INCLUDEPATH+=C:/MySQL/include" "LIBS+=C:/MYSQL/MySQL Server <version>/lib/opt/libmysql.lib" mysql.pro
nmake

К сожалению я не понимаю что надо сделать пути \qtbase\src\plugins\sqldrivers\mysql в папке QT у меня нет. Параметр mysql.pro это проект в котором я планирую использовать MYSQL или это какойто отдельный проект? Пожалуйста подскажите как правильно собрать драйвер MYSQL для qt 5.7
Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #1 : Февраль 13, 2017, 12:36 »

Версия Qt какая?

Обычно плагин qsqlmysql идет из коробки. его не надо собирать. Driver not loaded не обязательно говорит о проблемах с плагином Qt.
Может быть у тебя не прописаны пути до библиотек mySQL, может быть версия библиотек mySQL не совпадает с версией плагина qsqlmysql.

Если вдруг его нет:
Открываешь консоль. Набираешь например:
Цитировать
cd %QTDIR%\5.8\mingw53_32\src\plugins\sqldrivers\mysql
qmake "INCLUDEPATH+=C:/MySQL/include" "LIBS+=C:/MYSQL/MySQL Server <version>/lib/opt/libmysql.lib" mysql.pro
mingw32-make
mingw32-make install

плагин qsqlmysql должен появиться в нужном месте.
« Последнее редактирование: Февраль 13, 2017, 12:38 от PimenS » Записан
Snak2013
Гость
« Ответ #2 : Февраль 14, 2017, 09:08 »

Версия 5.8. Спасибо попробую.
« Последнее редактирование: Февраль 14, 2017, 09:19 от Snak2013 » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 22.