Bonjour je suis en train d'essayer de créer une base de données SQLite à partir de Qt. Mon problème est le suivant : le code suivant me crée bien un fichier "test.db" mais ce fichier est un fichier vide, la table n'est pas créée.
Voici le code, est ce que je me suis trompé quelque part?
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 QString nom_fichier = QDir::homePath(); nom_fichier += "/test.db"; // Ouvre la fenetre d'enregistrement QString fichier = QFileDialog::getSaveFileName(this, "Nouvelle Base de donnes", nom_fichier, "Fichier BDD(*.db)"); QFile file(fichier); if (file.open(QIODevice::WriteOnly)) { QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName(fichier); if (!db.open()) { QMessageBox::critical(0, qApp->tr("Cannot open database"), qApp->tr(QString::fromUtf8("Impossible d'ouvrir la base\nde données.\nCliquez sur Cancel pour quitter.")), QMessageBox::Cancel); return; } QSqlQuery query(db); query.exec("CREATE TABLE t1 ( id INTEGER PRIMARY KEY AUTOINCREMENT, " "text VARCHAR(256)" "entier INTEGER)");
Partager