a1aa1 2014-09-04 12:26 采纳率: 0%
浏览 4628

求助:QT无法操作已有的sqlite数据库

版本:qt5.3 sqlite2.7
描述:
1.qt在代码中建的库和表代码中可以随意操作,但终端sqlite命令打不开提示“unable to open …… file is encryped or is not a database”
2.在终端通过命令建的数据库qt代码中 可以.open()但无法操作 找不到表

bool Data::connect(QString usrType)
{
//stDB = QSqlDatabase::addDatabase("QSQLITE");
stDB = new QSqlDatabase(QSqlDatabase::addDatabase("QSQLITE", "connectname"));
stDB->setDatabaseName("./DB/" + usrType);
if (stDB->open())
{
//QMessageBox::information(NULL, "数据库", "connect!");
return true;
}
else
{
QMessageBox::critical(NULL, "数据库", "connect error");
}
return false;
}

int Data::check_usr(QString str_name, QString str_pwd, int flag)
{
int usr_flag = 0;
//QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
QSqlQuery query(*stDB);
if(query.exec("select * from users"))
{
while(query.next())
{
QString name = query.value(0).toString();
QString pwd = query.value(1).toString();
if(name == str_name && pwd == str_pwd)
{
if(name == "admin")
{
return usr_flag;
}
return usr_flag + flag;
}
}
}
return -1;
}

  • 写回答

1条回答 默认 最新

  • a1aa1 2014-09-05 01:41
    关注

    自己解决了 版本不兼容 qt5生成的事sqlite3文件 竟然不兼容?

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。