引用:
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();} (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|