Pergunta

Sistema Operacional:win7 compilador :mingw4.8(vem com Qt5.2) link para :Versão do Fedora core 5, kernel 2.6.15-1.2054_FC5 smp em uma i686

    db = new QSqlDatabase();
    db->addDatabase("QMYSQL");
    db->setHostName("localhost");
    db->setDatabaseName("myclinic");
    db->setUserName("root");
    db->setPassword(",trth12");  

    qDebug() << loader.errorString();
    qDebug() << "drivers: "<< QSqlDatabase::drivers();

    if (db->open())
        qDebug() << "Success!";
    else
        qDebug() << db->lastError().text();

mensagens

QSqlDatabase:QMYSQL driver não carregado QSqlDatabase:disponível drivers:QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL 7 "compartilhado a biblioteca não foi encontrado." drivers:("QSQLITE", "QMYSQL", "QMYSQL3", "QODBC", "QODBC3", "QPSQL", "QPSQL7")

"Driver não carregado Driver não carregado"

Foi útil?

Solução 2

Obrigado pela resposta, mas o problema não é porque me falta o qsqlmysql.dll mas eu não tenho a libmysql.dll(parece que essa dll não vêm com win7).

Aqui é um vídeo que mostrar-lhe como instalar o mysql

Outras dicas

Você parece estar ausente o mysql plugin no seu Windows ou a correta instalação do mysql em si, caso em que você vai precisar de ter feito isso através da instalação de todo o mysql necessário bibliotecas em seu sistema onde o plugin QtSql driver pode reconhecê-lo.

O plugin deve estar disponível sob a plugins/sqldrivers pasta como uma dll.Você também pode colocá-lo em um sqldrivers pasta ao lado de sua aplicação, de modo somethiing como este:

- yourapplication.exe
- sqldrivers/qsqlmysql4.dll

Você precisa agarrá-lo, de alguma forma, ou construir você mesmo.Esta é a explicação a partir da documentação de como fazer isso:

Como Construir o QMYSQL Plugin no Windows

Você precisa obter o MySQL arquivos de instalação.Executar SETUP.EXE e escolha a opção "Instalação Personalizada".Instalar o "Bibliotecas & Arquivos de inclusão do Módulo".Criar o plugin da seguinte forma (aqui é assumido que o MySQL está instalado em C:\MySQL):

cd %QTDIR%\src\plugins\sqldrivers\mysql
qmake "INCLUDEPATH+=C:\MySQL\include" "LIBS+=C:\MYSQL\MySQL Server <version>\lib\opt\libmysql.lib" mysql.pro
nmake

Se você não estiver usando um compilador Microsoft, substituir nmake com fazer na linha acima.

Há outro problema com o seu código no entanto.Você deve estar usando "127.0.0.1" em vez de "localhost" para bases de dados mysql.

Eu tinha a mesma Pb de você

A solução é:

O Qt MySQL drivers já está dentro Qt5 (mas não na versão anterior!)

Você só precisa "libmysql.dll" ao lado do seu aplicativo exe (ou no diretório do windows!) Você encontrar "libmysql.dll" em "mysql\mysqlX.X.XX\lib\opt" directory.

Se Qt MySQL driver não encontrado o libmysql.dll o erro é o mesmo que o driver não for encontrado...

Boa chance para o próximo!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top