QT 打开数据库失败 输出如下错误提示

欢香Love 2013-08-09 11:07:24
QSqlError(-1, "Error opening database", "out of memory")


代码如下:

QString strDBFile = "G:/AccuRadV7/DataCenter/Storage/CT/2003/12/28/1.2.840.113619.2.55.1.1762928362.1941.1072623214.903/Index.db";

QSqlDatabase dbSeries = QSqlDatabase::addDatabase("QSQLITE");
dbSeries.setHostName("192.168.1.29");
dbSeries.setDatabaseName( strDBFile );

if ( !dbSeries.open() )
{
qDebug()<<dbSeries.lastError();
qDebug()<<"连接数据库失败,请检查数据库设置!";
return false;
}
...全文
1798 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
QQ_278397935 2015-06-09
  • 打赏
  • 举报
回复
我也遇见了这样的问题,求解。
欢香Love 2013-08-13
  • 打赏
  • 举报
回复
我的数据库不大
donwmufromdying 2013-08-13
  • 打赏
  • 举报
回复
QString strDBFile = "G:/AccuRadV7/DataCenter/Storage/CT/2003/12/28/1.2.840.113619.2.55.1.1762928362.1941.1072623214.903/Index.db";
      
      QSqlDatabase dbSeries = QSqlDatabase::addDatabase("QSQLITE");
      dbSeries.setHostName("192.168.1.29"); //这一句没必要,sqlite不需要设置这个
        dbSeries.setDatabaseName( strDBFile );

        if ( !dbSeries.open() )
        {
            qDebug()<<dbSeries.lastError();
            qDebug()<<"连接数据库失败,请检查数据库设置!";
            return false;
        } 
其他的,只能猜了,你的数据库很大吗?
欢香Love 2013-08-10
  • 打赏
  • 举报
回复
会不会是因为Index.db文件在一个程序中已经处于打开状态,别的程序无法访问或读取数据
numen27 2013-08-09
  • 打赏
  • 举报
回复
原因是数据库文件无法读取,例如文件不存在,路径方式不对,文件路径不能包含空格 ,试试把数据库文件放到简单点的路径下,比如直接放在D:下 String strDBFile = "D:/Index.db"

21,499

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧