Bonjour,
Suite à la compilation du driver QIBASE, j'ai tenté de connecter mon programme à une base de données, mais j'obtiens la fameuse erreur : driver not loaded.
J'ai cherché sur les forums et j'ai mis les dlls dans le dossier de mon programme, sans résultat. Les drivers sont bons car ils venaient d'être compilé (j'ai réinstallé Qt). Voici mon code :
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 QT += core gui sql greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = ui TEMPLATE = app SOURCES += main.cpp\ mainwindow.cpp \ recherche.cpp \ user.cpp HEADERS += mainwindow.h \ recherche.h \ user.h FORMS += mainwindow.ui \ recherche.ui \ user.ui DISTFILES +=
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QtSql/QSqlDatabase> #include <QtSql/QSqlDriver> namespace Ui { class MainWindow; } class QSqlTableModel; class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = 0); ~MainWindow(); void changeUser(QString user); private slots: void write_in_file(QString separateur, QString donnee); void bt_clicked(QString collegue); void on_bt_mathieu_clicked(); void on_bt_yann_clicked(); void on_bt_jp_clicked(); void on_bt_luc_clicked(); void on_bt_jonathan_clicked(); void on_bt_frank_clicked(); void on_bt_vincent_clicked(); void on_bt_tristan_clicked(); void on_PTE_description_textChanged(); void on_actionMathieu_hovered(); void on_actionJean_Pierre_hovered(); void on_actionVincent_hovered(); void on_actionLuc_hovered(); void on_actionJonathan_hovered(); void on_actionFrank_hovered(); void on_actionYan_hovered(); void on_actionTristan_hovered(); void on_actionRecherche_triggered(); private: int m_annee; int m_mois; int m_jour; int m_heure; int m_minute; int m_seconde; bool debut; Ui::MainWindow *ui; QString m_user; QString table[1000][6]; QSqlTableModel *m_model; QSqlDatabase m_database; }; #endif // MAINWINDOW_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
25
26
27
28
29
30
31
32
33
34
35
36
37
38 #include "mainwindow.h" #include "ui_mainwindow.h" #include "recherche.h" #include <QDateTime> #include <fstream> #include <QApplication> #include <QErrorMessage> #include <QtSql/QSqlTableModel> #include <QtSql/QSqlError> #include <QMessageBox> #include <QtSql/QSqlDriver> using namespace std; MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); m_database = QSqlDatabase::addDatabase("QIBASE"); m_database.setHostName("192.168.1.94"); m_database.setDatabaseName("TEST"); m_database.setPort(3050); m_database.setUserName("SYSDBA"); m_database.setPassword("masterkey"); if(!m_database.open()){ QMessageBox::critical(this, "Error", m_database.lastError().text()); } m_model = new QSqlTableModel(this); m_model->setTable("Appels"); m_model->select(); ui->TA_recents->setModel(m_model); } MainWindow::~MainWindow() { delete ui; }
Partager