sqlite3数据库简介
帮助文档 SQL Programming 大多数关系型数的操作步骤:1)连接数据库 多数关系型数据库都是C/S模型 (Client/Server)sqlite3是一个本地的单文件关系型数据库,同样也有“连接”的过程 2)操作数据库 作为程序员,对数据库最常见的操作 就是 增删改查3)关闭数据库 连接也是一种资源,用完记得释放 Qt中 的数据库功能是放在一个单独的模块中,模块名为 sql 所以 如果需要使用Qt的数据库功能,需要在pro文件中 添加如下的指令: QT += sql Qt的sql模块中包含了大约10几个类型,常用的以下的三个:(1) QSqlDatabase 用于处理数据库的连接,包括 创建连接对象、设置连接属性、关闭连接(2) QSqlQuery用于执行SQL语句(3) QSqlError用于处理数据库错误,提供可读的错误信息 连接数据库的典型代码://初始化连接对象,使用静态函数addDatabase,参数是数据库类型 QSQLITE -- sqlite3db = QSqlDatabase::addDatabase("QSQLITE");//设置数据库名,建议带路径,如果存在,直接打开,如果不存在,则自带创建db.setDatabaseName("../test.db");//打开连接, 成功或者失败,给出相应的提示对话框bool ok = db.open();if( !ok ){QMessageBox::information( this, "tip", db.lastError().text() );return ;}QMessageBox::information(this, "tip", "connect db success! ");执行SQL语句的典型代码://创建用来执行SQL语句的对象QSqlQuery query( db );//准备SQL语句QString createsql = QString( "select username, passwd from t_user where username='%1';").arg(ui->lineEdit->text());qDebug() << createsql;//执行SQL语句if( !query.exec( createsql ) ){qDebug() << "select error : " << query.lastError().text();return ;}//QMessageBox::information( this, "提示", "select success! ");//遍历结果集while( query.next() ){//value用来获取一条记录(行)的列的值,可以使用索引(下标),也可以使用列名//value返回的是一个共用体,必须转换成该列的值真正的类型才来使用QString username = query.value(0).toString();QString passwd = query.value("passwd").toString();qDebug() << username << " -- " << passwd;}
Ubuntu和gec6818开发板一般都会自带sqlite3数据库驱动,所以不需要另外安装驱动,只需要安装sqlite3数据库即可。
1、sqlite3数据库的安装(Ubuntu中)
1)通过管理工具安装(APT)sudo apt-get install sqlite3 sudo apt-get install libsqlite3-devsudo apt-get install sqlitebrowser 2)通过源码包进行安装 (安装包在文章底部下载)(1)将 源码包 拷贝到 家目录下 ( /home/china/ )cp sqlite-snapshot-201803271513.tar.gz /home/china/ (2)解压 tar -zxvf sqlite-snapshot-201803271513.tar.gz(3)进入源码目录 cd sqlite-snapshot-201803271513 (4) 生成Makefile ./configure (5) 编译,生成可执行文件和库文件 make (6) 安装数据库(实质上就是把生成的可执行文件和lib库文件 放到系统相应的路径下)sudo make install
2、移植到开发板 ----------------(这里直接看第七步就行,我已经提供了编译好的文件,不行的话就自己按步骤执行)
sqlite3的移植: 移植原理是 在编译环境的机器上 交叉编译好 可执行文件和lib库文件 再把可执行文件和lib库文件 拷贝到开发板的 /bin /lib (1)将 源码包 拷贝到 家目录下 ( /home/china/ )cp sqlite-snapshot-201803271513.tar.gz /home/china/ (2)解压 tar -zxvf sqlite-snapshot-201803271513.tar.gz(3)进入源码目录 cd sqlite-snapshot-201803271513 (4) 生成Makefile ./configure --host=arm-linux --prefix=/home/china/sqlite3_arm --host 指定目标主机的架构 --prefix 指定程序在本机的安装路径(5) 编译,生成可执行文件和库文件 make (6) 安装数据库(实质上就是把生成的可执行文件和lib库文件 放到系统相应的路径下)sudo make install (7) 把相应的文件 下载到 开发板上 (需要的文件在“数据库移植”压缩包内)/home/china/sqlite3_arm/bin/ 把 sqlite3 文件 --》 拷贝到开发板的 /bin 目录下 //记得加权限 chmod 0777 sqlite3/home/china/sqlite3_arm/lib/ libsqlite3.so libsqlite3.so.0libsqlite3.so.0.8.6 把 这3个文件 拷贝到开发板的 /lib 目录下 (有链接文件 不能直接拷贝 )先压缩 再进行传输 sudo tar -zcvf libsqlite3.tar.gz libsqlite3.so.0.8.6 libsqlite3.so.0 libsqlite3.so
数据库移植压缩包已经打包上传了,有需要下载。
数据库移植
下面两个是要传到开发板的文件,第一个是Ubuntu中sqlite3数据库安装包