SQLite 安装与使用

最近接到一个需求,要求数据库使用SQLite,我就简单的了解了一下,下面也带大家入个门

1.什么是 SQLite?

SQLite是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite是一个增长最快的数据库引擎,这是在普及方面的增长,与它的尺寸大小无关。SQLite 源代码不受版权限制。

SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库不一样,您不需要在系统中配置。

就像其他数据库,SQLite 引擎不是一个独立的进程,可以按应用程序需求进行静态或动态连接。SQLite 直接访问其存储文件。

2.为什么要用 SQLite?

下面是菜鸟教程给出的答案:

  • 不需要一个单独的服务器进程或操作的系统(无服务器的)。
  • SQLite 不需要配置,这意味着不需要安装或管理。
  • 一个完整的 SQLite 数据库是存储在一个单一的跨平台的磁盘文件。
  • SQLite 是非常小的,是轻量级的,完全配置时小于 400KiB,省略可选功能配置时小于250KiB。
  • SQLite 是自给自足的,这意味着不需要任何外部的依赖。
  • SQLite 事务是完全兼容 ACID 的,允许从多个进程或线程安全访问。
  • SQLite 支持 SQL92(SQL2)标准的大多数查询语言的功能。
  • SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。
  • SQLite 可在 UNIX(Linux, Mac OS-X, Android, iOS)和 Windows(Win32, WinCE, WinRT)中运行。

读到这儿其实我就明白了客户为什么非得要求使用SQLite了,因为该数据库引擎无需像mysql或SqlServer那样需要额外的使用一个服务器来提供服务

3.安装

3.1 在 Windows 上安装 SQLite

进入官网,下载以下两个文件:

  • sqlite-tools
  • sqlite-dll

SQLite 安装与使用_第1张图片

因为我的电脑是64位的,所以下载的是sqlite-dll-win64-x64,如果是32位的话,请选择上面那个

接下来创建一个文件夹,我直接命名为sqlite,自己随意取,然后将我们下载的两个文件全部解压到这个目录里面,下图是解压之后的样子:
SQLite 安装与使用_第2张图片

接下来我们需要配置环境变量
SQLite 安装与使用_第3张图片

在cmd里输入sqlite3来检查是否安装成功,出现以下提示,则表示安装成功
SQLite 安装与使用_第4张图片

4.使用SQLite创建数据库

4.1 创建数据库文件

进入cmd,输入sqlite3,然后,我们接下来创建一个名称为:send_messgae的数据库,创建指令为:

.open D:send_messgae.db

格式为:.open [路径+数据库名字]
SQLite 安装与使用_第5张图片

在我们的d盘就可以看到生成了一个send_messgae.db的文件
SQLite 安装与使用_第6张图片

4.2 图形化界面操作

下面的操作,我们则需要通过Navicate图形化界面来操作,当然你可以继续使用指令在cmd里面进行操作,但是我感觉效率太低了,不是很推荐。
SQLite 安装与使用_第7张图片

SQLite 安装与使用_第8张图片

SQLite 安装与使用_第9张图片

我们建一张名为:tb_user的表来操作一下
SQLite 安装与使用_第10张图片

SQLite 安装与使用_第11张图片

下图则是SQLite的数据类型
SQLite 安装与使用_第12张图片

4.3 数据表的增删改查

新增:

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (1, 'Paul', 32, 'California', 20000.00 );

可以看到和Mysql基本如出一辙,后面的几个类型的语句也是如此

删除:

DELETE FROM COMPANY WHERE ID = 7;

修改:

UPDATE COMPANY SET ADDRESS = 'Texas', SALARY = 20000.00;

查询:

SELECT tbl_name FROM sqlite_master WHERE type = 'table';

所有的关系型数据库的语句都差不多少,所以自己不是很熟悉的建议学一下mysql就好。

5.SpringBoot集成SQLite

5.1 添加maven依赖


<dependency>
    <groupId>org.xerialgroupId>
    <artifactId>sqlite-jdbcartifactId>
    <version>3.36.0.3version>
dependency>

5.2 在application.properties中添加配置信息

# sqlite文件为绝对路径
spring.datasource.url=jdbc:sqlite:D:/send_messgae.db
# spring的jdbc可以根据spring.datasource.url的前缀判断driver-class-name,所以spring.datasource.driver-class-name该配置可以不写
spring.datasource.driver-class-name=org.sqlite.JDBC
# sqlite默认不支持设置用户名和密码,一般是通过对sqlite文件加密进行数据保护,所以这两个配置先不配置
# spring.datasource.username=
# spring.datasource.password=

剩下的你平时怎么操作Mysql的,就怎么操作SQLite就可以了

你可能感兴趣的:(数据库,sqlite,数据库,内置数据库)