[solved][Qt] Rozłączanie połączenia MySQL

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Fliszer
Piegowaty Guziec
Piegowaty Guziec
Posty: 10
Rejestracja: 03 mar 2009, 12:55
Płeć: Mężczyzna
Wersja Ubuntu: 8.10
Środowisko graficzne: GNOME

[solved][Qt] Rozłączanie połączenia MySQL

Post autor: Fliszer »

Witam, napisałem program, który wykorzystuje 2 bazy danych Sqlite oraz MySQL. Problem występuje z bazą danych MySQL, która znajduje się na serwerze (sqlite w katalogu programu), a mianowicie podczas użytkowania, po ok 3-5 minutach konsola wyrzuca mi błąd:

Kod: Zaznacz cały

QMYSQLResult::cleanup: unable to free statement handle
I koniec, nie pobiera żadnych informacji z bazy MySQL.

Poniżej pokazuje jak nawiązuję połączenie:

Kod: Zaznacz cały

	
QSqlDatabase mysqlDB = QSqlDatabase::addDatabase("QMYSQL", "mysqlDB");
mysqlDB.setHostName("756.***.***");
mysqlDB.setDatabaseName("*****");
mysqlDB.setUserName("*****");
mysqlDB.setPassword("****xxx");
mysqlDB.setConnectOptions("CLIENT_SSL=1;CLIENT_IGNORE_SPACE=1");
mysqlDB.open();

QSqlDatabase sqliteDB = QSqlDatabase::addDatabase("QSQLITE");
sqliteDB.setDatabaseName("solarium.sqlite");
sqliteDB.open();
A tak wywołuje zapytania z bazy danych:

Kod: Zaznacz cały

	
QSqlDatabase mysqlDB = QSqlDatabase::database("mysqlDB");
QSqlQuery queryKtoryPracownik("select ids_pracownicy from sol_pracownicy where login = '"+wybierzUzytkownikaComboBox->currentText()+"'", mysqlDB);
Tak jak napisałem przez ok 3-5 minut jest ok, a następnie rozłącza się.

A może jakiś inny sposób na rozwiązanie tego problemu?

EDIT:
Po 3 dniach kombinowania i googlowania znalazłem rozwiązanie :), które u mnie działa:

Trzeba było dodać:

Kod: Zaznacz cały

QSqlDatabase mysqlDB = QSqlDatabase::database("mysqlDB");
mysqlDB.open();
QSqlQuery iluMySQLquery("select count(ids_users) from sol_users", mysqlDB);
mysqlDB.close();
Mam nadzieje, że komuś się to przyda i oszczędzi trochę czasu.
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 26 gości