MySQL Driver
-
Olá pessoal, eu estive a tentar instalar o MySQL Driver para utiliza-lo no QT, porém não obtive muito sucesso, estou recorrendo ao fórum em busca de uma luz, alguém para me guiar para a solução. Pois então, eu já segui vários passos, já fiz de tudo, porém sem sucesso. Um exemplo é na hora de utilizar o qmake, me retorna a mensagem que não existe o arquivo mysql.pro, e realmente não existe. Na minha pasta do QT Creator, eu só encontro até a pasta \sqldrivers, não tem a \mysql. Li em alguns lugares que isto aconteceu pelo fato de eu não ter o QT Source Files. Eu baixei o Qt 5.2.1 for Windows 32-bit (MinGW 4.8, OpenGL, 634 MB), talvez eu teria que baixar a 'SDK' separadamente?
Sou novo em QT, gostaria de explicações bem detalhadas de como proceder, se possível. Obrigado desde já.
-
você tem que ter o código fonte do qt, e o MySQL compilado na mesma arquitetura do compilador... nos fontes, procura o projeto do plugin do MySQL e compila.... no máximo vc terá que converter as dlls do MySql para o tipo compatível com o Mingw. Mas, procure bem nessa instalacao que vc usou, pois ela ja vem com o driver, e verifique se o mysql que vc tem é o 32bits...
-
[quote author="Rodrigocg" date="1395678471"]você tem que ter o código fonte do qt, e o MySQL compilado na mesma arquitetura do compilador... nos fontes, procura o projeto do plugin do MySQL e compila.... no máximo vc terá que converter as dlls do MySql para o tipo compatível com o Mingw. Mas, procure bem nessa instalacao que vc usou, pois ela ja vem com o driver, e verifique se o mysql que vc tem é o 32bits...[/quote]
Opa, muito obrigado pela sua resposta Rodrigo, respondeu minha dúvida de uma forma clara. Vou me certificar de seguir os passos que você falou. Abraços.
-
Postando novamente para avisar que apesar de ter feito várias tentativas, ainda não consegui solucionar meu problema. No aguardo de alguém que possa me esclarecer o que realmente devo fazer e o que vou precisar para fazer o QMySQL funcionar. É possível fazer isto apenas utilizando o QT Creator 5.2.1? etc.
-
-
Acontece que SQLDrivers do Qt corresponde a módulo separado do SDK. Sendo assim, terá que baixar eles "https://qt.gitorious.org/qt/kde-qt/source/983e244eca6cca1e11402b3af5470a07c2b22fc2:src/plugins/sqldrivers" dentro da pasta 'src/plugins' da sua instalação Qt. Você deve entrar na pasta %QT_DIR%/src/plugins/sqldrivers e executar 'qmake' e depois 'mingw32-make'. Isso irá gerar todas as libs necessárias para usar o mysql (e outros bancos) com Qt. Qt4.8 opensource de forma detalhada em "http://qt-project.org/doc/qt-4.8/sql-driver.html".
-
Seguindo os passos, o mingw32-make me retorna a seguinte mensagem: file not recognized: File format not recognized
Apenas para me certificar de seguir os passos dados por vocês corretamente, o QT Creator não vem com SDK incluida, correto? Nesse caso, eu terei que baixar o QT Creator e o SDK?
-
Quanto ao mingw32-make: verifique se todos os caminhos estão corretos nas variáveis do sistema. No Qt5 mingw32-make esta dentro da pasta "QTDIR/Tools". Quanto ao SDK: veja em http://qt-project.org/downloads. Ex: você faz download de 'Qt 5.2.1 for Windows 32-bit (MinGW 4.8, OpenGL, 634 MB)'. Então ao instalar ele você terá todas as ferramentas (libs, QtCreator, etc) para fazer uma aplicação em Qt C++, é o SDK (Software Development Kit)! Existem muitos módulos separados que você pode baixar e compilar. O SQLDrivers é um conjunto deles.
-
Já tentei bastante coisa, tentei compilar o plugin, porém sem sucesso.
Na pasta do meu Qt Creator 5.2.1 se encontra os seguintes diretórios:
!http://img809.imageshack.us/img809/7985/5tb1.png(Diretórios)!Afinal, vou precisar ou não de ter a SDK para utilizar o QMySQL? E caso precise, como posso proceder?
-
Cara, nesse mesmo diretório que vc mandou verifica na pasta plugins\sqldrivers se existe os arquivos: qsqlmysql.dll e qsqlmysqld.dll.
Se existir, bato na mesma tecla, o problema é o seu mysql....
Durante a instalação do Mysql, tem uma opção que é referente a arquitetura e isso passa despercebido...,
-
remove tuto que é relativo ao mysql... depois instala novamente, so que no modo avançado, na parte que pergunta quais pacotes serao instalados, desmarque a opcao Mysql server, depois selecione a arquitetura 32bits, e marque novamente o Mysql server e prociga normalmente com a instalação.... depois testa... no máximo vai ter que expecificar no path o caminho das dlls do mysql....
o mysql que usei foi esse: "link mysql":http://cdn.mysql.com/Downloads/MySQLInstaller/mysql-installer-community-5.6.16.0.msi
-
[quote author="Rodrigocg" date="1396114994"]remove tuto que é relativo ao mysql... depois instala novamente, so que no modo avançado, na parte que pergunta quais pacotes serao instalados, desmarque a opcao Mysql server, depois selecione a arquitetura 32bits, e marque novamente o Mysql server e prociga normalmente com a instalação.... depois testa... no máximo vai ter que expecificar no path o caminho das dlls do mysql....
[/quote]
Feito! porém continuo a receber o erro :QSqlDatabase: QMYSQL driver not loaded.
Poderia explicar sobre especificar no path o caminho das dlls? -
vai na pasta do sql server, e copia o diretorio da pasta lib como no exemplo:
C:\Program Files (x86)\MySQL\MySQL Server 5.6\libcoloca isso na varialvel path do windows.
ex: "Alterar variavel path":https://www.youtube.com/watch?v=yz9-6Gy3DPAobs: se o qtcreator estiver aberto, feche ele e abra novamente...