中国领先的IT技术网站
|
|

SQLite数据库移植详解

在挂有小型系统的嵌入式产品中,移植SQLite数据库就是一项必须的工作。以下是针对arm-linux-gcc的arm产品来移植SQLite数据库的步骤详解,在移植之前,请先确保arm-linux-gcc编译是安装正常的,这点非常重要。

作者:xinnanbufei来源:Linux公社|2017-07-12 09:20

沙龙活动 | 去哪儿、陌陌、ThoughtWorks在自动化运维中的实践!10.28不见不散!


在挂有小型系统的嵌入式产品中,移植SQLite数据库就是一项必须的工作。以下是针对arm-linux-gcc的arm产品来移植SQLite数据库的步骤详解,在移植之前,请先确保arm-linux-gcc编译是安装正常的,这点非常重要。

SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。

Sqlite官网网址:https://www.sqlite.org/

1、将sqlite-autoconf-3090200.tar.gz安装包放到一个路径下面,并将tar -xf sqlite-autoconf-3090200.tar.gz解压

2、建立sqlite的空文件夹

3、进入刚解压的文件夹sqlite-autoconf-3090200,并执行配置命令 ./configure --host=arm-linux --prefix=/opt/toolschain/sqlite

4、执行make命令

5、执行make install命令

6、完成之后,到刚才新建的sqlite数据库看一下,是否生成一些文件夹

7、Bin文件夹

注意:Bin文件夹下有个sqlite3这个文件,当的arm开发板要用sqlite数据库时,将这个文件复制到开发板下面即可,一般的路径是是在文件系统下的/user/bin下面,也有其他的路径,视情况而定。

8、Lib文件夹

注意:这些都是一些库连接文件了,将这些文件全部复制到开发板的文件系统的/user/lib下面,也有其他路径,视情况而定。

9、Include文件夹

这个文件夹下面的sqlite3.h就是我们应用程序要使用的文件了,在要操作数据库时,将这个文件包含进来即可,比如我的项目下面就包含了这个文件了。

10、由于我的项目使用的静态库连接,看makefile

所以需要将生成文件lib下面的libsqlite3.a复制到我的项目文件夹下面,如果使用动态的就不需要了,注意一下

11、编译项目

当编译项目时出现了一序列的错误,都找不到该函数

这个问题的解决方法是:在编译时加上-ldl即可

12、Sqlite制作成功,这个是arm-linux平台的,其他平台的移植类似,successfully!!!……

13、Sqlite常用基本命令

新建数据库

  1. sqlite3 databasefilename 

插入记录

  1. insert into table_name values (field1, field2, field3...); 

查询

select * from table_name;查看table_name表中所有记录;

select * from table_name where field1='xxxxx'; 查询符合指定条件的记录;

删除

  1. delete from table_name where ... 

删除表

drop table_name; 删除表;

drop index_name; 删除索引;

修改

  1. update table_name set xxx=value[, xxx=value,...] where ... 

输出 HTML 表格:

  1. sqlite3 -html film.db "select * from film;" 

【编辑推荐】

  1. StackOverflow发布2017年最流行数据库排名
  2. SQL Server、Mysql、Oracle三种数据库的优缺点总结
  3. 美团点评数据库高可用架构的演进与设想
  4. 7 月全球数据库排名发布:Oracle扳回一局,MySQL最受欢迎
  5. 【免费公开课】韩立刚-配置SQL2008R2数据库镜像
【责任编辑:武晓燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

网络服务器配置与应用(第3版)

本书是由长期从事网络管理工作和网络工程人员培训工作的一线网管人员和教学人员精心编写,从现实的技术发展角度和实际应用的角度,通过大量...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
× Python最火的编程语言