Russian Qt Forum
Января 15, 2025, 23:02
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
Ошибка QMYSQL driver not loaded
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Ошибка QMYSQL driver not loaded (Прочитано 45389 раз)
useruser
Гость
Ошибка QMYSQL driver not loaded
«
:
Ноября 27, 2013, 16:29 »
Код:
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setPort(3306);
db.setHostName("92.53.98.20");
db.setDatabaseName("fr4402");
db.setUserName("fr4402");
db.setPassword("0123456");
bool ok = db.open();
Пишет в дебагере
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3
QSqlQuery::exec: database not open
Какой драйвер и куда он хочет?) ОС Windows 7.
До смены хостинга такого не писал. Поменял хостинг (может другая версия mysql??-хотя и тут и там 5я) и написал эту ошибку.
Файлы libmysql.dll и libmysql.lib для этой БД mysql у меня есть.
«
Последнее редактирование: Ноября 27, 2013, 16:38 от useruser
»
Записан
kibsoft
Хакер
Offline
Сообщений: 625
Re: Ошибка QMYSQL driver not loaded
«
Ответ #1 :
Ноября 27, 2013, 17:07 »
http://qt-project.org/doc/qt-4.8/sql-driver.html#qmysql
Записан
http://kibsoft.ru
- Download the Qt Media Encoding Library here
The apps that were written using QtMEL:
http://srecorder.com
- Screen recording software
useruser
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #2 :
Ноября 27, 2013, 17:45 »
В предлагаемой статье ответа на мой вопрос нет.
Записан
Majestio
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #3 :
Ноября 27, 2013, 18:30 »
Цитата: useruser от Ноября 27, 2013, 16:29
Файлы libmysql.dll и libmysql.lib для этой БД mysql у меня есть.
Для использования MySQL - драйвер нужно предварительно собрать. В рамках Qt он именуется плагином. В линке, что давали ранее - есть вся инфа по сборке этого плагина (драйвера).
Судя по твоим логам - этого плагина (драйвера) у тебя нет, читай "не собирал".
Записан
lesav
Частый гость
Offline
Сообщений: 235
qnx.org.ru
Re: Ошибка QMYSQL driver not loaded
«
Ответ #4 :
Ноября 27, 2013, 18:40 »
Цитата: Majestio от Ноября 27, 2013, 18:30
Судя по твоим логам - этого плагина (драйвера) у тебя нет, читай "не собирал".
Ну не надо так категорично!
Еще такая ошибка может возникать если программа не находит нужную библиотеку libmysql.dll в %PATH%.
Записан
http://qnx.org.ru/
Majestio
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #5 :
Ноября 27, 2013, 18:45 »
Цитата: lesav от Ноября 27, 2013, 18:40
Цитата: Majestio от Ноября 27, 2013, 18:30
Судя по твоим логам - этого плагина (драйвера) у тебя нет, читай "не собирал".
Ну не надо так категорично!
Еще такая ошибка может возникать если программа не находит нужную библиотеку libmysql.dll в %PATH%.
Безусловно. Но топикстартер упомянул "Файлы libmysql.dll и libmysql.lib для этой БД mysql у меня есть", а про плагин си сном ни духом. Вывод?
Записан
useruser
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #6 :
Ноября 27, 2013, 21:02 »
Спорить о том, что драйверы можно собирать или писать самому, я не буду.
Но тут есть 3 но:
1) С другим хостингом работало. Ничего не удалял, переустанавливал. Где драйвер? Самоудалился? Загадка.)
2) База данных и на старом и на новом хостинге MySQL 5. Какая 5 (версия) - не смотрел. А QT работает с этой БД-так написано в статье.
3) Собирать или писать драйвер под одну из самых распостраненных в мире баз данных, установленную на любом хостинге, входящую в LAMP любого линукса, для систем Windows или Linux -это "не есть правильно". А для Windows систем -абсурд.
Для таких, типовых задач, драйвер должен быть. И в большинстве сред разработки он есть, либо его можно скачать.
Записан
Majestio
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #7 :
Ноября 27, 2013, 21:18 »
Цитата: useruser от Ноября 27, 2013, 21:02
Спорить о том, что драйверы можно собирать или писать самому, я не буду.
Но тут есть 3 но:
1) С другим хостингом работало. Ничего не удалял, переустанавливал. Где драйвер? Самоудалился? Загадка.)
2) База данных и на старом и на новом хостинге MySQL 5. Какая 5 (версия) - не смотрел. А QT работает с этой БД-так написано в статье.
3) Собирать или писать драйвер под одну из самых распостраненных в мире баз данных, установленную на любом хостинге, входящую в LAMP любого линукса, для систем Windows или Linux -это "не есть правильно". А для Windows систем -абсурд.
Для таких, типовых задач, драйвер должен быть. И в большинстве сред разработки он есть, либо его можно скачать.
А Б И С Ь Н Я Ю
1) Драйвера MySQL в поставке Qt в собранном виде нет, так решили. Нужно собирать самому.
2) Qt работает уверенно с MySQL.
3) Рассуждение неправильное! Хотите драйвер MySQL - получите. Для этого найдите его исходник в поставке, скомпилируйте, соберите в DLL, положите в нужное вам место ... ну и все.
Давай твой драйвер компилировать и подключать, ланна?
Записан
Alex Custov
Джедай : наставник для всех
Offline
Сообщений: 2063
Re: Ошибка QMYSQL driver not loaded
«
Ответ #8 :
Ноября 27, 2013, 21:23 »
Цитата: useruser от Ноября 27, 2013, 21:02
1) С другим хостингом работало. Ничего не удалял, переустанавливал. Где драйвер? Самоудалился? Загадка.)
Ты не привёл полную иерархию файлов и каталогов твоей программы, мы не знаем был он у тебя вообще или нет.
Цитата: useruser от Ноября 27, 2013, 21:02
2) База данных и на старом и на новом хостинге MySQL 5. Какая 5 (версия) - не смотрел. А QT работает с этой БД-так написано в статье.
Работает, конечно. Через SQL плагин
Цитата: useruser от Ноября 27, 2013, 21:02
3) Собирать или писать драйвер под одну из самых распостраненных в мире баз данных, установленную на любом хостинге, входящую в LAMP любого линукса, для систем Windows или Linux -это "не есть правильно". А для Windows систем -абсурд.
Пользователи Windows должны страдать
Не знаю распространяется ли MYSQL плагин вместе с официальной сборкой Qt, вполне вероятно, что нет. Если нет, то не составляет труда его собрать. Писать его не нужно, естественно. Ещё можно взять готовые сборки Qt уже с этим и другими плагинами, и не париться. Например,
отсюда
. В Linux он собирается мейнтейнерами дистрибутивов и почти всегда присутствует.
Цитата: useruser от Ноября 27, 2013, 21:02
Для таких, типовых задач, драйвер должен быть. И в большинстве сред разработки он есть, либо его можно скачать.
Qt - это не среда разработки, не путай с RAD типа Delphi.
«
Последнее редактирование: Ноября 27, 2013, 21:25 от Alex Custov
»
Записан
lesav
Частый гость
Offline
Сообщений: 235
qnx.org.ru
Re: Ошибка QMYSQL driver not loaded
«
Ответ #9 :
Ноября 27, 2013, 21:34 »
Если ничего не делал, и отвалилось по вине хостера то для решения задачи не хватает полной картины. У меня есть несколько вопросов.
Я так понял пользователь сидит в ОС
Windows
на локальной машине (не на хосте)
наличие драйвера в каталоге plugins/sqldrivers/qsqlmysql4.dll (qsqlmysql.dll для Qt5)
наличие клиентской библиотеки libmysql.dll
одноименной с MySQL сервером версией
клиентская библиотека должна лежать в одном каталоге с запускаемой программой
Если все на месте, проверить зависимость драйвера от сторонних библиотек. Например
Dependency Walker
-ом
Для
UNIX
наличие драйвера в каталоге $QT_INSTALL_PLUGINS/plugins/sqldrivers/qsqlmysql4.so
наличие клиентской библиотеки libmysql.so.X
одноименной с MySQL сервером версией
Клиентская биб-ка (или ее линк) должна быть в $LD_LIBRARY_PATH или в /usr/lib
Если все на месте, проверить зависимость драйвера от сторонних библиотек
команда ldd -v $QT_INSTALL_PLUGINS/plugins/sqldrivers/qsqlmysql4.so
(переменная QT_INSTALL_PLUGINS может быт не установлена, в этом случае перейти в каталог с драйвером и выполнить
ldd -v ./qsqlmysql4.so)
Записан
http://qnx.org.ru/
Majestio
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #10 :
Ноября 27, 2013, 21:38 »
Все совершенно верно на 100%.
За исключением одного - исходный код драйвера (плугина) уже есть в поставке Qt.
И работает для всех платформ. Одно "но" - он по сути "прослойка". Нужен он и специфические библиотеки MySQL (сам работаю с PostgreSQL, а там именно так).
Записан
Majestio
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #11 :
Ноября 27, 2013, 21:43 »
Цитата: lesav от Ноября 27, 2013, 21:34
Если ничего не делал, и отвалилось по вине хостера то для решения задачи не хватает полной картины. У меня есть несколько вопросов.
Я так понял пользователь сидит в ОС
Windows
на локальной машине (не на хосте)
наличие драйвера в каталоге plugins/sqldrivers/qsqlmysql4.dll (qsqlmysql.dll для Qt5)
наличие клиентской библиотеки libmysql.dll
одноименной с MySQL сервером версией
клиентская библиотека должна лежать в одном каталоге с запускаемой программой
Если все на месте, проверить зависимость драйвера от сторонних библиотек. Например
Dependency Walker
-ом
Для
UNIX
наличие драйвера в каталоге $QT_INSTALL_PLUGINS/plugins/sqldrivers/qsqlmysql4.so
наличие клиентской библиотеки libmysql.so.X
одноименной с MySQL сервером версией
Клиентская биб-ка (или ее линк) должна быть в $LD_LIBRARY_PATH или в /usr/lib
Если все на месте, проверить зависимость драйвера от сторонних библиотек
команда ldd -v $QT_INSTALL_PLUGINS/plugins/sqldrivers/qsqlmysql4.so
(переменная QT_INSTALL_PLUGINS может быт не установлена, в этом случае перейти в каталог с драйвером и выполнить
ldd -v ./qsqlmysql4.so)
Сорри ... много букваф
Сообщение:
Цитировать
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3
говорит о том, что этот драйвер по какой-то причине не грузится (если он есть). Надо искать причины.
Записан
lesav
Частый гость
Offline
Сообщений: 235
qnx.org.ru
Re: Ошибка QMYSQL driver not loaded
«
Ответ #12 :
Ноября 27, 2013, 21:48 »
Цитата: Majestio от Ноября 27, 2013, 21:43
Сорри ... много букваф
.......
говорит о том, что этот драйвер по какой-то причине не грузится (если он есть). Надо искать причины.
Дык а я о чем кашляю!!!
В тех моногоБакавах
заложен механизм поиска причин!
Записан
http://qnx.org.ru/
Majestio
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #13 :
Ноября 27, 2013, 21:54 »
Цитата: lesav от Ноября 27, 2013, 21:48
Дык а я о чем кашляю!!!
В тех моногоБакавах
заложен механизм поиска причин!
И самая главная ... а есть ли драйвер вааще?
Записан
SuleymanStalskiy
Гость
Re: Ошибка QMYSQL driver not loaded
«
Ответ #14 :
Мая 23, 2014, 10:09 »
Подскажите пожалуйста.
Если QT не собран из исходников, а просто установлен из "Qt 5.3.0 for Windows 32-bit (MinGW 4.8.2, OpenGL, 734 MB)". Можно ли в таком случае уже потом собирать драйвер для MYSQL (просто скачав исходники Qt с сайта и запустив сборку драйвера) или надо обязательно собрать Qt из исходников?
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...