SQLite数据库介绍与使用
概述
SQLite是一个轻量级、跨平台的关系型数据库。SQLite的很小,它的数据库就是一个文件,但是它并不缺乏功能。不需要复杂的安装或管理。SQLite事务是完全兼容ACID的,允许从多个进程或线程安全访问。SQLite特别适合为单个应用程序和设备提供本地数据存储,使用很简单,将sqlite3.exe可执行文件复制到目标计算机上就可以运行它,新版本对SQL支持比较完善了,因此可以很方便的用来学习SQL。
官网SQLite Home Page
中文网SQlite中文网 【注意中文网多出“教程”部分,但介绍有点落伍了】
主要特色
◇轻量级
先说它的第一个特色:轻量级。SQLite和C/S模式的数据库软件不同,它是进程内的数据库引擎,因此不存在数据库的客户端和服务器。使用SQLite一般只需要带上它的一个动态库,就可以享受它的全部功能。而且那个动态库的尺寸也挺小,以版本3.6.11为例,Windows下487KB、Linux下347KB。
◇绿色软件
SQLite的另外一个特点是绿色:它的核心引擎本身不依赖第三方的软件,使用它也不需要“安装”。所以在部署的时候能够省去不少麻烦。
◇单一文件
所谓的“单一文件”,就是数据库中所有的信息(比如表、视图、触发器、等)都包含在一个文件内。这个文件可以copy到其它目录或其它机器上,也照用不误。
◇跨平台/可移植性
可在 UNIX、Linux, Mac OS-X, Android, iOS和 Windows中运行。
【SQLite Does Not Implement
https://www.sqlite.org/omitted.html
SQLite未实现的SQL功能
https://www.sqlite.net.cn/omitted.html】
命令行窗口SQLite工具sqlite3.exe介绍
SQLite 是一个非常小巧且实用的关系数据库,对于读多写少的小项目,找不出比它更合适的。在数据库的管理工具方面,SQLite 官方默认提供了一个命令端的 Shell 程序,可以满足创建数据库、建表和各种 SQL 查询操作,只是不太直观。
命令行窗口SQLite工具下载地址 https://sqlite.org/download.html
找到sqlite-tools-win32-x86-3400100.zip下载,解压(包含3个用于管理SQLite数据库文件的命令行工具:sqlite3.exe命令行shell程序、sqldiff.exe程序和sqlite3_analyzer.exe程序),重点了解命令行shell程序sqlite3.exe,
Windows平台下,打开cmd窗口,切换到含有刚解压的sqlite3.exe的目录下,若不切换需要加路径,输入 D:\SQLite\sqlite3 -version后回车(我这里,将sqlite3.exe放到了D:\SQLite目录中),出现对应的版本号信息 :
【如果嫌麻烦——不想每次都切换到或输入sqlite3所在的路径,可以将其路径放到系统环境变量中,参见下图:
】
sqlite3.exe可以在CMD中直接运行,参见下图:
在sqlite>提示符后可以输入命令——这些命令被称为 SQLite 的点命令——以点开头,例如,
获取可用的点命令的清单,可以在任何时候输入 .help 后回车,参见下图:
下面介绍使用sqlite3.exe管理sqlite数据库。先给出概述:
SQLite 是不区分大小写的,但也有一些命令是大小写敏感的,比如 GLOB 和 glob 在 SQLite 的语句中有不同的含义。
SQL 注释以两个连续的 “-” 字符开始,并扩展至下一个换行符。 C 风格的注释,以 “/*” 开始,并扩展至下一个 “*/” ,可以跨越多行。
1)SQLite创建、打开数据库命令是再从cmd窗口中输入
sqlite3 数据库名.db
如果当前的数据库文件不存在,就先新建后打开,如果已存在就打开
2)之后可以使用sql语句sql语句以;结束
3)退出SQLite数据库管理系统命令
.quit 或者 .exit
具体使用介绍介绍
(一)利用sqlite3.exe 创建数据库命令的基本语法如下:
[路径\]sqlite3 [路径\]数据库名.db
新手注意,这里有一个坑,是在cmd(在命令行)中输入,而不是打开sqlite3后在shell中输入。sqlite3后的扩展名不必输入。如果想不输入sqlite3前面的路径,可以将其路径放到系统环境变量中。又,这个命令还可以打开已建立的数据库文件,若指出的数据库文件不存在则会新建之。
输入 .databases 就会显示刚创建的数据库信息(能看到创建的数据库文件及地址路径信息)
输入.quit 就会退出sqlite3的shell程序环境。
进入SQLite后,输入 .open 数据库名 方式,也可以创建数据库,如果数据库文件已经建立,则打开。这种点命令方式 数据库名不支持路径。
(二)使用SQL语句操作数据库。数据库创建后就可以在sqlite3的shell程序环境中使用使用SQL语句操作数据库。
包括CREATE, SELECT, INSERT, UPDATE, DELETE和DROP。SQL语句指令都是以分号(;)结尾的。如果遇到两个减号(–)则代表注解,sqlite3会略过去。
这些命令基于他们的操作性质分为以下几种:
★ DDL(数据库定义语言)
CREATE:创建一个新的表,一个表的视图,或者数据库中的其他对象
ALTER:修改数据库中的某个已有的数据库对象,比如一个表
DROP:删除整个表,或者表的视图,或者数据库中的其他对象
★ DML(数据库操作语言)
INSERT:创建一条记录
UPDATE:修改记录
DELETE:删除记录
★ DQL(数据查询语言)
SELECT:从一个或多个表中检索某些记录
SQLite 可视化管理工具
前面介绍的hell脚本虽然提供了很强大的功能,但是使用起来还是不够方便,幸运的是第三方提供了一有些好用的 SQLite 可视化管理工具。
SQLiteStudio是一个开源、跨平台的 SQLite 可视化管理工具。免费,多语言界面,支持 Linux,Mac 和 Windows。官方网址SQLiteStudio
下载安装后(安装过程略),先连接数据库,参见下图操作:
之后,可以进行其它操作。如设计表时界面如下:
新手有了这些基础,再想深入,应顺利多了。