Seite 1 von 1

QSqlDatabase sehr langsam bei ODBC

Verfasst: 26. März 2010 14:57
von Troll.Soft
Hallo,
habe ein Problem mit der Geschwindigkeit, wenn ich QSqlDatabase mit der ODBC-Schnittstelle nutze. Mit MySql geht alles ratzfatz. Unten liegt der komplette Code. Die Datenbank enthält 2 Spalten char(50) mit 50 Zeilen, also lachhaft.
Bin für jeden Tipp dankbar.
tschüß TrollSoft

Code: Alles auswählen

#include "QApplication"
#include "QSqlDatabase"
#include "QSqlTableModel"
#include "QTableView"

int main	( int Argc, char ** Argv ) 
{
	QApplication App(Argc, Argv);

	QSqlDatabase DB	= QSqlDatabase::addDatabase("QODBC");

	DB.setDatabaseName("Access");
	DB.open();

	QSqlTableModel*	Model = new QSqlTableModel(NULL, DB);

	Model->setTable("Adressen");
	Model->select();

	QTableView *View = new QTableView(NULL);

	View->setModel(Model);
	View->setWindowTitle("Adressen");
	View->show();

	return App.exec();
}

Verfasst: 26. März 2010 15:55
von upsala
Warum willst du eine MySQL-Datenbank über die ODBC-Schnittstelle anbinden, wenn du auch eine direkte Anbindung machen kannst?

Was sagen die Datenbank-Logfiles.

Was hast du für Zeitunterschiede?

Verfasst: 26. März 2010 16:39
von Troll.Soft
Hallo upsala,
Problem gelöst :) könnte mich ohrfeigen !!
upsala hat geschrieben:Warum willst du eine MySQL-Datenbank über die ODBC-Schnittstelle anbinden, wenn du auch eine direkte Anbindung machen kannst?
MySql, SQLite etc werden native eingebunden. Access, DBase etc werden über ODBC eingebunden.
Was sagen die Datenbank-Logfiles.
Die waren das Problem. Habe die Logfiles für ODBC schon vor Wochen eingeschaltet und nicht mehr dran gedacht.
Das Ausschalten dieser Logfiles brachte es. Das Programm lief wieder normal.
Was hast du für Zeitunterschiede?
Wahnsinnige. Um eine Tabelle mit 50 Datensätzen anzuzeigen brauchte es 6 Sekunden.

danke und tschüß
TrollSoft