下面的方法可以避免这种错误:
QSqlDatabasePrivate::addDatabase: duplicate connection name 'qt_sql_default_connection', old connection removed.
-
- QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
-
- QSqlDatabase sqlDatabase;
-
-
if (QSqlDatabase::contains("my_conn"))
- {
-
sqlDatabase = QSqlDatabase::database("my_conn");
- }
-
else
- {
-
sqlDatabase = QSqlDatabase::addDatabase("QSQLITE", "my_conn");
- }
-
-
sqlDatabase.setDatabaseName("my_database.db");
-
-
if (!sqlDatabase.open())
- {
-
qDebug() << "Open database failed!";
-
return;
- }
-
QString query_str = "select * from my_table";
-
- QSqlQuery sqlQuery(query_str, sqlDatabase);
- sqlQuery.exec();
-
while (sqlQuery.next())
- {
-
for (int i = 0; i < cnt; ++i)
- {
- qDebug() << sqlQuery.value(i).toString();
- }
- }
-
- sqlDatabase.close();
本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/990874如需转载请自行联系原作者
RQSLT