Salut à tous!

Je suis entrain de créer une base de données que je veux utiliser dans Qt. J'avoue que je suis encore au début de ce langage QSL.

Lorsqu eje compile et que j'exécute, la fenetre principale s'ouvre bien, mais le langage d'erreur suivant apparait:

"QSqlDatabase: QMYSQL driver not loaded"

Je vous serai reconnaissant si vous m'aidiez et trouver une solution.

1- Pourquoi QMYSQL driver n'est-il pas chargé?

2- Comment le charger?

L'autre message d'erreur est le suivant:

" Unable to find table infoperso"

infoperso en effet est un tableau que j'ai crée dans ma base de données.

a) Pourquoi n'est-il pas retrouvé?

b) Comment le retrouver?

Merci d'avance!

Voici mon code:

Fichier .pro

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
QT       += sql
SOURCES  += \
    main.cpp \
    MainWindow.cpp
 
 
HEADERS += \
    MainWindow.h
Fichier .h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#ifndef DEF_MAINWINDOW
#define DEF_MAINWINDOW
 
#include <QtGui>
#include <QtCore>
#include <QtSql>
#include <QSqlDatabase>
 
 
class MainWindow: public QMainWindow
{
    Q_OBJECT
 
public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
 
private:
    QWidget *fenetrePrincipale;
    QSqlDatabase bd;
    QSqlTableModel *model;
};
 
#endif // MAINWINDOW_H
Fichier .cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "MainWindow.h"
 
MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
{
    fenetrePrincipale = new QWidget;
    this->setCentralWidget(fenetrePrincipale);
    bd = QSqlDatabase::addDatabase("QMYSQL");
    bd.setHostName("localhost");
    bd.setUserName("root");
    bd.setPassword("");
    bd.setDatabaseName("excel");
 
 
    model = new QSqlTableModel(this);
    model->setTable("infoperso");
    model->select();
    qDebug()<<model->lastError().text();
}
"excel" est le nom de ma base de données

Le main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include "MainWindow.h"
#include <QApplication>
 
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
 
    MainWindow fen;
 
    fen.show();
 
    return app.exec();
 
}