加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

qt4操作sqlite入门

发布时间:2020-12-12 23:30:43 所属栏目:百科 来源:网络整理
导读:引用: sqlite 是一款轻量级的、基于文件的嵌入式数据库,2000年就已经诞生,经过7年多的发展,直到今天已经成为最流行的嵌入式数据库,包括google在内的公司 在其桌面软件中亦使用 sqlite 存储用户数据。由此可以看出,已经没有任何理由去怀疑sqlite的稳定

引用:

sqlite 是一款轻量级的、基于文件的嵌入式数据库,2000年就已经诞生,经过7年多的发展,直到今天已经成为最流行的嵌入式数据库,包括google在内的公司 在其桌面软件中亦使用 sqlite 存储用户数据。由此可以看出,已经没有任何理由去怀疑sqlite的稳定性了。

sqlite的优势

1. 免配置,和access一样,只要把数据库文件通过ftp上传到服务器上就可以使用,不需要服务器的额外支持

2. 备份方便,因为只是一个文件,只要复制一份该文件,就能备份整个数据库

3. 虽然是轻量级数据库,但他支持最大 2tb 的单个库文件。

4. 快,无与伦比的快。经过实际测试,在几百万记录的情况下,sqlite的插入和查询速度和 mysql 不分上下,快于 sql server,10倍于 access (但这并不意味着它可以替代 sql server )

用QT操作sqlite

由于sqlite属于轻量级的数据库,不需要配置,不需要安装,也不需要管理员,所以也就没必要像操作mysql等数据库一样的设置主机,用户和密码了。

上述文字转自:http://www.cnblogs.com/bennylam/archive/2010/03/22/1691355.html

qt下使用sqlite数据库如下:

1. 首先拷贝sqlite的库文件到arm板:

#cp libQtSql.so* /目标目录

2. 然后安如下方式测试数据库:

#include <QApplication>
#include <QTextEdit>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QtSql/QSqlError>
#include <QtSql/QSqlDriverPlugin>

int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QTextEdit display;
display.resize(200,100);
display.show();

//使用sqlite数据库驱动;
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
//设置数据库的名称;
db.setDatabaseName("/mnt/Nand/dbtest");
//打开数据库,如果数据库存在,则打开;如果不存在,则创建数据库;
bool ok = db.open();
if(ok)
{
display.append("open database ok!");

//新建一个查询的实例
QSqlQuery query;
//如果表employee不存在,则创建employee表;
if(query.exec("Create table if not exists employee(name VARCHAR(10),age VARCHAR(10))"))
{
display.append("query : create ok!");
//向表employee中插入记录
if(query.exec("insert into employee(name,age) values('yumei',27)"))
{
display.append("query : insert ok!");
//从表employee中查询数据
if(query.exec("select * from employee"))
{
display.append("query : select ok!");
int num = 0;
num = query.size();
QString name;
QString age;
QString result;
//将查询结果逐条显示
while(query.next())
{
name = query.value(0).toString();
age = query.value(1).toString();

result = name + age;
display.append(result);
}

}
else
{
display.append("query : select fail!");
}
}
else
{
display.append("query : insert fail!");
}
}
else
{
display.append("query : create fail!");
}
}
else
{
display.append("open database fail!");
}

return app.exec();}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读