sqlite数据库连接出错

时间:2022-11-25 08:27:19

下面的方法可以避免这种错误:
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();