Seite 1 von 1

Qsqldatabase problem

Verfasst: 4. November 2008 17:13
von wayneos
hallo,

versuche gerade ein kleines programm mit hilfe eines tutorials zu schreiben, welches mir zugriff auf meine hier local installierte sql datenbank erlaubt.

dafür habe ich eine connection.h datei erstellt (so ähnlich ist sie im tutorial):

Code: Alles auswählen

#ifndef CONNECTION_H
#define CONNECTION_H

#include <QMessageBox>

#include <QSql>

class QSqlDatabase;

/*
    This file defines a helper function to open a connection to an
    in-memory SQLITE database and to create a test table.

    If you want to use another database, simply modify the code
    below. All the examples in this directory use this function to
    connect to a database.
*/
//! [0]

static bool createConnection () {
	 
	QSqlDatabase db;
	db = QSqlDatabase::addDatabase ("QMYSQL");
	db -> setHostName ("localhost");
	db -> setDatabaseName ("aubing");
	db -> setUserName ("root");
	db -> setPassword ("passowort");
	
	if (!db.open ()) {
		
		QMessageBox::critical (0, qApp -> tr ("cannot open database"), qApp -> tr ("unable to establish a database connection", QMessageBox::Cancel);
        
		return false;
    
	}

    return true;

}

#endif
included wird sie dann in die main.cpp:

Code: Alles auswählen

#include <QApplication>

#include "connection.h"
#include "tableeditor.h"

int main (int argc, char *argv[]) {
	
	QApplication app (argc, argv);
    
	if (!createConnection ())
		
		return 1;

    TableEditor editor ("user-message");
    editor.show ();
    
    return editor.exec ();
 
}
beim compilieren bekomm ich jedoch die fehlermeldung:

Code: Alles auswählen

aggregate "SqlDatabase db" has incomplete type and cannot be defined
was mache ich falsch?

Verfasst: 4. November 2008 17:34
von upsala
1. QtSql includen und nicht QSql
2. class QSqlDatabase ist unnötig
3. SqlDatabase in der Fehlermeldung passt eigentlich nicht mit deinem Code zusammen

Verfasst: 4. November 2008 20:56
von wayneos
mhh ich überreis das irgendwie nicht! :S find auch nichts gscheides im net. kann mir wer vielleicht ein einfaches beispielscript für eine sql verbindung mit abfrage erstellen?

Verfasst: 6. November 2008 00:43
von wayneos
ist das denn wirklich so kompliziert? :S hoffe doch nicht, brauche das für meine facharbeit.

kann mir wer ein gutes tutorial empfehlen?

thx

Verfasst: 6. November 2008 06:30
von Christian81
Das Problem ist das wir kein Problem sehen und Du uns nicht beschreibst was genau nicht geht.

Verfasst: 6. November 2008 07:57
von CaptnChaos
Also noch mal zu mitschreiben (rot heisst löschen grün heisst ändern):

Header-Datei:
#include <QtSql>
class QSqlDatabase;

pro-Datei:
QT += sql

Wenn das nicht das Problem ist können wir dir, wie schon gesagt, mit der Fehlerbeschreibung auch nicht helfen...