bonjour,
j'essai de créer une application avec une bdd sqlite.
J'ai vraiment eu du mal a trouver comment faire mais a force de persévérer j'ai trouver des exemples sur le net.
Je vous montre mon code.
mon .h :
mon .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
19 #include <QWidget> #include <QString> #include <QtSql/QSqlDatabase> #include <QtSql/QSqlQuery> class baseDeDonnees: public QWidget { public : baseDeDonnees(QString, QString, QString, QString ); private : // function : create connexion to the database void dbConnexion(); // parameters QSqlDatabase d_db; QString d_host, d_dbname, d_username, d_pwd; };
mon main.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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 #include "baseDeDonnees.h" #include <QString> #include <QApplication> #include <QtSql/QSqlDatabase> #include <QtSql/QSqlQuery> #include <QMessageBox> #include <QtSql/QSqlError> #include <QtSql/QSqlDriver> #include <QtSql/QSqlDriverPlugin> // constructor : initialise the database baseDeDonnees::baseDeDonnees(QString host, QString dbname, QString username, QString pwd ): QWidget(), d_host(host), d_dbname(dbname), d_username(username), d_pwd(pwd) { dbConnexion(); } // function : create connexion to the database void baseDeDonnees::dbConnexion() { d_db = QSqlDatabase::addDatabase("QSQLITE"); d_db.setHostName(d_host); d_db.setDatabaseName(d_dbname); d_db.setUserName(d_username); d_db.setPassword(d_pwd); if ( !d_db.open() ) { QMessageBox::warning(this, "Erreur Ouverture", d_db.lastError().text()); } else { QMessageBox::information(this, "Bonne Ouverture", "Connexion BD Ok!"); } }
A la compilation j'ai plein d'erreurs du genre :
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 #include <QApplication> #include <QtGui> #include "mainwindow.h" #include <baseDeDonnees.h> int main(int argc, char *argv[]) { QApplication app(argc, argv); QString host = "localhost"; QString dbname = "Pi.db"; QString username = "root"; QString pwd = ""; baseDeDonnees w(host, dbname, username, pwd); w.show(); MainWindow fenetre; fenetre.showMaximized(); return app.exec(); }
Quelqu'un aurait une idée,undefined reference to `_imp___ZN12QSqlDatabaseD1Ev'
C:\Users\sebastien\Projet C++\GestionPi-build-desktop\..\GestionPi\baseDeDonnees
merci
Partager