Bonjour
Debian Lenny Qt 4.4.3
Pas de probleme a la compilation
A l'execution->erreur de segmentation
la base de donnees est ouverte mais la requete create table retourne une erreur
/*
exemple.h
*/
#ifndef EXEMPLE_H
#define EXEMPLE_H
#include QMainWindow>
class Exemple : public QMainWindow
{
Q_OBJECT
public:
//constructeur
Exemple();
private:
void initDb();
};
#endif
/*
exemple.cpp
*/
#include QtCore>
#include QtGui>
#include QtSql>
#include <QApplication>
#include QtDebug>
#include "exemple.h"
Exemple::Exemple()
{
initDb();
}
void Exemple::initDb()
{
qDebug()<<"version QT "<<QT_VERSION_STR;
QString requete;
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
QSqlQuery query(db);
db.setHostName("localhost");
db.setDatabaseName("Depenses");
db.setUserName("myUser");
db.setPassword("myPwd");
if(db.open())
{
qDebug()<<"Succes Ouverture database Depenses" ;
}
requete = "CREATE TABLE maTable \
( \
pkey smallint(5) UNSIGNED DEFAULT 0 NOT NULL, \
);";
query.exec(requete);
if (query.isActive())
{
qDebug()<<"OK";
}
else
{
qDebug()<<"Erreur";
QMessageBox::critical(0, "Database Error", QSqlDatabase::database().lastError().text());
exit(-1);
}
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
Exemple *exemple = new Exemple;
exemple->show();
return app.exec();
}
# OK
Posté par Ymage . Évalué à 10.
Merci.
Si vous n'aimez pas ce commentaire c'est qu'il est ironique.
# La requête
Posté par FreeFlight . Évalué à 6.
[^] # Re: La requête
Posté par CHRISTIAN DARNAUD . Évalué à 2.
Effectivement, j'ai corrige mais l'erreur de segmentation persiste.
# RTFM
Posté par Ymage . Évalué à 3.
requete.append("CREATE TABLE maTable (pkey smallint(5) UNSIGNED DEFAULT 0 NOT NULL);");
Le reste est sur : http://doc.qt.nokia.com/stable/qstring.html
Si vous n'aimez pas ce commentaire c'est qu'il est ironique.
[^] # Re: RTFM
Posté par FreeFlight . Évalué à 2.
http://doc.qt.nokia.com/stable/qstring.html#operator-eq-5
# Héritage et constructeur
Posté par crabs (site web personnel) . Évalué à 1.
initialisations de QMainWindow ?
Exemple::Exemple():QMainWindow(0,0)
{
...
}
Si la compilation est en mode debug où plante le programme en analysant le core ?
A+, crabs
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.