Projet e-stock  1.0
BTS SN-IR 2019
ihm-estock/baseDeDonnees.h
Aller à la documentation de ce fichier.
1 #ifndef BASEDEDONNEES_H
2 #define BASEDEDONNEES_H
3 
16 #include <QObject>
17 #include <QtSql/QtSql>
18 #include <QSqlDatabase>
19 #include <QMutex>
20 #include <QString>
21 #include "e-stock.h"
22 
23 //#define DEBUG_BASEDEDONNEES
24 
25 class BaseDeDonnees : public QObject
26 {
27  Q_OBJECT
28  public:
29  static BaseDeDonnees* getInstance(QString type="QMYSQL");
30  static void detruireInstance();
31 
32  bool estConnecte();
33  bool connecter(QString nomBase=BDD_NOMBASE, QString username=BDD_USERNAME, QString password=BDD_PASSWORD, QString serveur=BDD_SERVEUR);
34 
35  bool estOuvert();
36  bool ouvrir(QString fichierBase);
37 
38  /* uniquement pour : UPDATE, INSERT et DELETE */
39  bool executer(QString requete);
40 
41  /* uniquement pour : SELECT */
42  bool recuperer(QString requete, QString &donnees); // 1 -> 1
43  bool recuperer(QString requete, QStringList &donnees); // 1 -> 1..*
44  bool recuperer(QString requete, QVector<QString> &donnees); // 1..* -> 1
45  bool recuperer(QString requete, QVector<QStringList> &donnees); // 1..* -> 1..*
46 
47  private:
48  BaseDeDonnees(QString type);
50 
52  static QString typeBase;
53  static int nbAcces;
54 
55  QSqlDatabase db;
56  QMutex mutex;
57 };
58 
59 #endif // BASEDEDONNEES_H
static BaseDeDonnees * baseDeDonnees
Definition: ihm-estock/baseDeDonnees.h:51
static BaseDeDonnees * getInstance(QString type="QMYSQL")
Definition: ihm-estock/baseDeDonnees.cpp:38
static void detruireInstance()
Definition: ihm-estock/baseDeDonnees.cpp:51
bool ouvrir(QString fichierBase)
Definition: ihm-estock/baseDeDonnees.cpp:120
#define BDD_SERVEUR
Definition: e-stock.h:19
Definition: ihm-estock/baseDeDonnees.h:25
~BaseDeDonnees()
Definition: ihm-estock/baseDeDonnees.cpp:31
QSqlDatabase db
Definition: ihm-estock/baseDeDonnees.h:55
bool estConnecte()
Definition: ihm-estock/baseDeDonnees.cpp:70
BaseDeDonnees(QString type)
Definition: ihm-estock/baseDeDonnees.cpp:22
static QString typeBase
Definition: ihm-estock/baseDeDonnees.h:52
#define BDD_PASSWORD
Definition: e-stock.h:21
#define BDD_NOMBASE
Definition: e-stock.h:22
bool recuperer(QString requete, QString &donnees)
Definition: ihm-estock/baseDeDonnees.cpp:190
Paramètres généraux de l&#39;application.
#define BDD_USERNAME
Definition: e-stock.h:20
static int nbAcces
Definition: ihm-estock/baseDeDonnees.h:53
bool estOuvert()
Definition: ihm-estock/baseDeDonnees.cpp:114
bool connecter(QString nomBase=BDD_NOMBASE, QString username=BDD_USERNAME, QString password=BDD_PASSWORD, QString serveur=BDD_SERVEUR)
Definition: ihm-estock/baseDeDonnees.cpp:76
bool executer(QString requete)
Definition: ihm-estock/baseDeDonnees.cpp:152
QMutex mutex
Definition: ihm-estock/baseDeDonnees.h:56