QSqlDatabase sehr langsam bei ODBC

Alles rund um die Programmierung mit Qt
Antworten
Troll.Soft
Beiträge: 190
Registriert: 18. Juni 2008 09:52
Wohnort: Hamburg

QSqlDatabase sehr langsam bei ODBC

Beitrag 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();
}
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag 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?
Troll.Soft
Beiträge: 190
Registriert: 18. Juni 2008 09:52
Wohnort: Hamburg

Beitrag 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
Antworten