MIS 数据库原理 SQLite实现 - SQLite 及其使用

2022年7月22日 289点热度 0人点赞 0条评论

SQLite 及其使用

SQLite 简介

SQLite 是一个进程库,实现了一个「自包含的,无服务器,零配置,事务性的」 SQL 数据库引擎。SQLite 的代码在公共领域,因此可以免费用于任何目的,无论是商业目的还是私人目的。SQLite 是世界上部署最广泛的数据库。

SQLite 是「嵌入式」 SQL 数据库引擎。与大多数其他 SQL 数据库不同,SQLite 「没有单独的服务器进程」。SQLite 直接读取和写入普通磁盘文件。具有多个表,索引,触发器和视图的完整 SQL 数据库包含在单个磁盘文件中。

参考:SQLite中文文档 [https://www.sqlite.net.cn/index.html]

SQLite的主要局限

SQLite不支持的 SQL92 特性如下表所示:

特性 描述
ALTER TABLE 支持RENAME TABLEALTER TABLEADD COLUMN variants命令,不支持DROP COLUMNALTER COLUMNADD CONSTRAINT
Trigger支持 支持FOR EACH ROW触发器,但不支持FOR EACH STATEMENT触发器。
VIEWs 在 SQLite 中,视图是只读的。您不可以在视图上执行DELETEINSERTUPDATE语句。
GRANTREVOKE 可以应用的唯一的访问权限是底层操作系统的正常文件访问权限。

曾经关于 JOIN 的局限在最新版中不再存在,已经支持 FULL 和 RIGHT 连接。更多局限参见“示例代码的 SQLite 实现”中的部分。

安装

以 Windows 10 64 位操作系统为例。

  • 访问[https://www.sqlite.org/download.html]SQLite下载页面;
  • 找到名为[Precompiled Binaries for Windows]的节;
  • 下载名为[sqlite-tools-win32-x86-*******.zip]的文件;

注意:不要下载错为不带 tools 的文件,这些文件仅为动态链接库,供应用程序内调用。正确的下载链接后有【A bundle of command-line tools for managing SQLite database files, including the command-line shell program, the sqldiff.exe program, and the sqlite3_analyzer.exe program.】的说明。

  • 解压压缩包内的三个文件,打开终端,输入以下命令:
>cd <解压缩的地址>
>sqlite3
如果出现以下提示,则安装并启动成功
SQLite version 3.39.0 2022-06-25 14:57:57
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite>

环境变量配置和其他操作系统安装方法参见:[https://www.runoob.com/sqlite/sqlite-installation.html]

启动与命令

SQLite 语句可以以任何关键字开始,如SELECTINSERTUPDATEDELETEALTERDROP,所有语句以分号“;”结束。-- [https://www.runoob.com/sqlite/sqlite-syntax.html]

SQLite 内,命令以“.”开头,语句以“;”结尾。SQLite 以文件形式存储数据库,打开数据库有两种方法。

从终端中使用命令打开:

>sqlite3 <数据库文件名>

在 SQLite 中使用命令打开:

sqlite> .open <数据库文件名>

在以上两种方法打开数据库文件时,文件默认是在“sqlite3.exe”同目录下的。如果不存在,将创建一个新的数据库文件。如果需要删除数据库,使用“Windows资源管理器”操作或者在终端中使用del命令。

如果从终端打开 SQLite 时不指定数据库文件名,SQLite 将使用临时的内存数据库。在退出 SQLite 后,其中的数据将不被保存。

退出 SQLite 请使用“ctrl + c”通用快捷键或者使用.quit命令。

Shell 交互与 SQL 文件执行

参考Command Line Shell For SQLite:[https://www.sqlite.org/cli.html]

对于简单的SQL语句,可以通过命令行交互的方式直接在命令行中输入、执行和查看执行结果。也可以通过.read命令读取“.sql”文件执行。

75630MIS 数据库原理 SQLite实现 - SQLite 及其使用

这个人很懒,什么都没留下

文章评论