SQLite3下载与安装
一、SQLite概述:
1.简介:SQLite是一款开源的、嵌入式关系型数据库,它在便携性、易用性、紧凑型、高效性和可靠性有突出的表现。它是一款嵌入式数据库,所以在大多数嵌入式开发中都会使用SQLite,它没有独立的进程,与所在的应用服务共同生存,代码也与应用程序代码在一起。对于内部程序有一个独立的数据库服务器,对于外部而言无法看到程序有一个关系型数据库在运行,程序也不需要关系数据库是如何运作的,只需要管理自己的数据即可。
2.体系结构:SQLite拥有简洁、模块化的体系结构,可以划分为3个子系统和8个独立模块组成。这些模块将查询划分为几个独立的任务,体系几个顶部编译查询语句、中部执行、底部处理存储并于操作系统交互
如图
-接口:接口处于栈的顶端,由SQLite C API组成,开发人员通过此接口与数据库通信。
编译器:编译过程从语法分析器和词法分析其开始,他们协同处理sql查询语句,分析语法有效性,然后转化为底层能够处理的数据结构,最后代码生成器生成sqlite专用的汇编代码。
虚拟机:虚拟数据库引擎。它是专为处理数据设计的虚拟机,独立于上层的操作系统、CPU等。例如创建一个表这些操作都是先编译成虚拟机语言,然后才形成一个指令集。
后端:由B-tree、页缓存以及操作系统接口组成。B-tree负责排序。页负责存储信息如:字段、索引、记录。pager(sqlite一种数据结构)负责管理页面,根据B-tree请求从磁盘读写数据。
3.SQLite优点:
零配置:不需要做任何配置
移植性:可以运行在Windows、Linux、BSD、MACOS、UNIX等系统上。无缝工作在32位和64位操作系统上。同时适应大小字节。
紧凑型:只需要包含一个头文件和一个库。
简单性:SQLite的API简单易用。
灵活性:直接放到应用程序中就可以获得SQL支持
自由授权:免费开源
可靠性:代码肯定可靠
易用性:
4. SQLite缺点:
并发:SQLite的锁机制是粗粒度的,它允许多个读但是只允许一个写。写期间不允许其他访问数据库,如果应用程序需要很高的并发性,则不适合。
网络:SQLite数据库可以通过网络文件共享,但是当多个客户端修改数据库文件时,会导致出错。
5. 获取SQLite:www.sqlite.org
6. 安装SQLite:
离线安装:dpkg -i sqlite3_3.7.2-1ubuntu0.1_i386.deb
在线安装:
apt-get update
apt-get install sqlite3 //sqlite3数据库软件
apt-get install libsqlite3-dev //sqlite3数据库开发支持库
apt-get install sqlite3-doc //sqlite3数据库说明文档
apt-get install sqlitebrowser //sqlite3数据库操作软件
7.编译源码:
1.解压源码:# tar xvf sqlite-autoconf-3081002.tar.gz
2、进到源码目录并定制Makefile
# cd sqlite-autoconf-3081002
# ./configure --prefix=$PWD/build --host=arm-linux CC=/opt/arm-linux-gcc-4.6.4/bin/arm-linux-gcc
# ./configure --prefix=$PWD/build --host=i386-linux说明
--prefix: 指定安装路径
--host:指定主机编译环境
arm-linux是指ARM交叉编译
i386-linux是指x86系统
CC:指定编译器
如果--host是arm-linux则需要交叉编译工具链
如果--host是i386-linux则不需要指定编译器,而使用系统默认的gcc
3、编译:# make
4、安装:# make install
8.打开数据库:在命令行输入命令:sqlite3 + *.db(数据库名)
9.数据库管理:
创建数据库:sqlite test.db。如果仅仅是这样的话创建的是一个假数据库,当退出数据库后,该数据库就不存在了,除非在里面创建一张表或者一个视图,才能在磁盘创建一个永久数据库。
退出数据库:.exit
获取数据库scheam信息:
.tables : 查看所有的表.schema <table_name> :查看表结构.database: 显示当前打开的数据库.indices test 显示test表的索引
导出数据:将数据库对象导出成SQL格式
1. .output file.sql (前提 file.sql 已经存在这个文件).dump2. sqlite3 test.db .dump > file.sql
导入数据:导入数据有两种方法,如果数据文件是由SQL语句构成,则使用.read命令导入,如果数据文件是由符合分割的值组成,则使用.import命令导入。
1. .read file.sql.import file.csv test:将带有分隔符的csv数据导入到test表中2. sqlite3 test.db < file.sql
数据库备份:sqlite3 test.db .dump > file.sql
将数据库导出为表格:sqlite3 -header -csv infomation.db “select *from Brother;” > Brother.csv
10.图形界面工具推荐:DB Browser for SQLite(轻巧、简洁)
SQLite3下载与安装相关推荐
- python下载安装教程mac-数据分析入门~mac 下载及安装 Python 环境
嗯,从今天开始要记录我从文科小白步入数据分析师的一步步,当然不是自学,第一步买课,等有自学能力开始再找能否自学的出路,经过对 DC 学院,Udacity.courses 等课程的框架.基础要求.老师, ...
- 210312阶段三通过sqlite3源码安装sqlite3
目录 一.学习的知识点 1操作系统 1.1PC 1.2移动端 2数据库 2.1Linux下安装sqlite3 处理器 二.上课没有听懂或者没有理解的地方 三.当天学习的收获 一.学习的知识点 1操作系 ...
- 常用开发工具 之 SQLite 数据库 与 Navicat for SQLite 的下载、安装与简单使用说明
常用开发工具 之 SQLite 数据库 与 Navicat for SQLite 的下载.安装与简单使用说明 目录 常用开发工具 之 SQLite 数据库 与 Navicat for SQLite 的 ...
- MySql基础篇---001 数据库概述与MySQL安装篇:概述,表和类对应关系,表关系、数据库卸载,下载,安装,配置,启动,登录,演示,图形化工具,目录结构,常见问题
第01章_数据库概述 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 1. 为什么要使用数据库 持久化(persistence):把数据保存到可掉电式存储 ...
- MySQL下载与安装教程以及环境变量配置
MySQL下载 1 搜索mysql 选择mysql downloads 如下 2 点击滑动到底部选择社区版本(免费) 如下 3 选择Community Server 如下 4 选择对应的版本下载 我选 ...
- java jdk 1.8 安装_下载、安装、配置 java jdk1.8
近期配置react native的开发环境,所以就从配置环境开始.rn的环境配置有那么几项,其中重要的一个就是java jdk(Java Development Kit 的缩写),那么以下就是下载.安 ...
- vs安装一直在提取文件_Visual Studio 2019下载及安装教程
宸1分钟前 这可是我珍藏多年的资源啊. Visual Studio 2019 Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品.是目前最流行的Windows ...
- python安装包_迈出Python学习第一步:Python开发环境的下载与安装
所谓"磨刀不误砍柴工"."工欲善其事,必先利其器",都在告诉我们一个道理:要做好一个事情,事先做好充分的准备工作是非常重要的.所以在我们正式学习用Python编 ...
- oracle怎么下载安装,Oracle数据库的下载和安装方法
一.Oracle数据的下载与安装: 我这里是Oracle Database 11g Release 2版本的. 1.百度云链接: 链接:https://pan.baidu.com/s/1QYvBVS3 ...
- 我的世界php安装,我的世界Linux搭建网页后台Multicraft下载与安装
小编为大家带来了<我的世界>Linux搭建网页后台Multicraft下载与安装,首先下载Multicraft Linux版,下载好了以后请玩家自己看着下面的教程来安装. 64位:http ...
最新文章
- 数据库范式(1NF、2NF、3NF、BCNF)
- 算法提高课-搜索-DFS之连通性模型-AcWing 1112. 迷宫:dfs和bfs两种解法
- 好的MongoDB中文文档
- d3.js实现隐藏部分关系
- 百度SEO最新强引蜘蛛软件工具
- ASP.NET 1.1与ASP.NET 2.0 应用运行并存
- PyQt5学习笔记(二) 文本控件及使用
- 红孩子艰难求生 苏宁易购或伸援手
- 计算机打印机节支措施,“节支降耗,从我做起 ”倡导篇 ——节约纸张
- Python 正则表达式匹配中文
- Sql Server Express版本升级到企业版
- 大学综评自招面试 计算机专业,自主招生中的综合评价面试技巧
- docker限制容器下载速度
- (java)跳台阶:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
- 深度搜索算法(DFS)
- PMOS双电源供电隔离电路(USB接入为电池充电 电池断开供电)
- 推荐一款非常好用的效率APP
- 【图像处理】SFR算法详解1
- 不用远程软件,校园网电脑之间如何远程连接
- fopen 参数'rb' 与'rb+'引发的黑色血案