• 2760阅读
  • 3回复

[提问]Qt5.4 连接Sqlite 问题 [复制链接]

上一主题 下一主题
离线xins0123
 

只看楼主 倒序阅读 楼主  发表于: 2015-03-16
在Qt中使用Sqlite ,open 返回成功,但接着使用 QSqlQuery 执行 sql 语句却报错:
数据测试失败(26):file is encrypted or is not a database Unable to execute statement


测试代码如下:
QSqlQuery query(m_db);        if( !query.exec("select * from system") )            qDebug() << tr("数据库测试失败(%1):%2").arg(query.lastError().number())                        .arg( query.lastError().text() );


请问是什么原因呢?
离线xins0123

只看该作者 1楼 发表于: 2015-03-16
数据库一开始是不存在的,打开数据库的代码:

QSqlDatabase db = QSqlDatabase::addDatabase( "QSQLITE" );    db.setDatabaseName( dbFileName );    bool opened = db.open();    if( !opened )        qDebug() << QObject::tr("打开数据库失败:%1").arg( db.lastError().text() );
离线xins0123

只看该作者 2楼 发表于: 2015-03-16
没人知道,就自问自答了
发现了问题所在,可能Qt5.4的是Sqlite3,所以对.db后缀识别错误,数据库文件 不在加后缀或者后缀改为 .db3就成功了。
离线honei_x

只看该作者 3楼 发表于: 2015-03-27
谢谢楼主,这几天刚把sqlite3搞定一部分,下面就开始调试qt+sqlite3。谢谢楼主分享。
快速回复
限100 字节
 
上一个 下一个