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

问题描述

求助: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;
}

解决方案

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

时间: 2024-09-05 08:34:58

qtcreator-求助:QT无法操作已有的sqlite数据库的相关文章

Android编程操作嵌入式关系型SQLite数据库实例详解_Android

本文实例分析了Android编程操作嵌入式关系型SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite特点 1.Android平台中嵌入了一个关系型数据库SQLite,和其他数据库不同的是SQLite存储数据时不区分类型 例如一个字段声明为Integer类型,我们也可以将一个字符串存入,一个字段声明为布尔型,我们也可以存入浮点数. 除非是主键被定义为Integer,这时只能存储64位整数 2.创建数据库的表时可以不指定数据类型,例如: 复制代码 代码如下: CREATE TAB

Android编程操作嵌入式关系型SQLite数据库实例详解

本文实例分析了Android编程操作嵌入式关系型SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite特点 1.Android平台中嵌入了一个关系型数据库SQLite,和其他数据库不同的是SQLite存储数据时不区分类型 例如一个字段声明为Integer类型,我们也可以将一个字符串存入,一个字段声明为布尔型,我们也可以存入浮点数. 除非是主键被定义为Integer,这时只能存储64位整数 2.创建数据库的表时可以不指定数据类型,例如: 复制代码 代码如下:CREATE TABL

Android程序中读取使用已有的SQLite数据库

方法一: 先在 Manifest 里添加权限: <span style="font-size:12px;"><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /&

Android SQLite数据库操作代码类分享_Android

使用示例: package cn.hackcoder.beautyreader.db; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; /** * Created by hackcoder on 15-1-25. */ public clas

SQLite数据库操作实践

 SQLite数据库操作实践 SQLite存储类型 null - 空值  integer - 有符号整数,自增列定义 id integer primary key autoincrement real - 浮点数,存储为8-byte IEEE浮点数  text - 文本字符串 使用数据库编码(UTF-8, UTF-16BE 或 UTF-16LE)进行存储 blob - 二进制数据,如图片.声音等等  也可以接受其它数据类型例如datetime,varchar,nvarchar,decimal,f

使用iOS原生sqlite3框架对sqlite数据库进行操作

使用iOS原生sqlite3框架对sqlite数据库进行操作 一.引言       sqlite数据库是一种小型数据库,由于其小巧与简洁,在移动开发领域应用深广,sqlite数据库有一套完备的sqlite语句进行管理操作,一些常用的语句和可视化的开发工具在上篇博客中有介绍,地址如下: sqlite数据库常用语句及可视化工具介绍:http://my.oschina.net/u/2340880/blog/600820.       在iOS的原生开发框架中可以对sqlite数据库进行很好的支持,这个

windows下VisualStudio和QtCreator搭建Qt开发环境

一.简介         集成开发平台IDE都有各自的长处,编写Qt程序可根据自己的喜好来选择相应的IDE.下述文章都是装载博友的文章,其中有很多细节还得自己调整. 二.详解 1.VisualStudio搭建Qt开发环境 Visual Studio中文官方网站 Visual Studio所有下载 (1)Visual Studio Community 2013 1.选择Community 2013,下载安装 2.安装完Visual Studio默认是英文,如果对英文不感冒的童鞋,可以下载中文语言包

Win10 IoT C#开发 5 - 操作 IoT 设备内嵌 SQLite 数据库 CURD

原文:Win10 IoT C#开发 5 - 操作 IoT 设备内嵌 SQLite 数据库 CURD Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架构上运行. 前几章我们讲了 Raspberry 安装 Win10 IoT 系统及搭建开发环境.部署程序及操作 GPIO 和 UART 的方法,通过这些功能我们已经可以获得到传感器发送给我们的数据,但是如果数据不能及时推送

qt sqlite ...-qt连接sqlite数据库获取数据问题

问题描述 qt连接sqlite数据库获取数据问题 qt已成功连接到sqlite数据库,数据库里面有data表,为什么显示不存在data表,读不到数据? 解决方案 http://www.oschina.net/question/878586_225008 解决方案二: bool isTableExist = query.exec(QString("select count(*) from sqlite_master where type='table' and name='%1'").a