文章插图
应用程序经常需要保存数据 。无论你的用户是创建简单的文本文档、复杂的图形布局、游戏进度还是错综复杂的客户和订单号列表,软件通常都意味着生成数据 。有很多方法可以存储数据以供重复使用 。你可以将文本转储为 INI、YAML、XML 或 JSON 等配置格式,可以输出原始的二进制数据,也可以将数据存储在结构化数据库中 。SQLite 是一个自包含的、轻量级数据库,可轻松创建、解析、查询、修改和传输数据 。
- 下载 SQLite3 备忘录
总而言之,它是用于存储和组织数据的一个可靠而简单的系统 。
安装你的系统上可能已经有 SQLite 库,但是你需要安装其命令行工具才能直接使用它 。在 Linux上,你可能已经安装了这些工具 。该工具提供的命令是
sqlite3
(而不仅仅是 sqlite) 。如果没有在你的 Linux 或 BSD 上安装 SQLite,你则可以从软件仓库中或 ports 树中安装 SQLite,也可以从源代码或已编译的二进制文件进行下载并安装 。
在 macOS 或 Windows 上,你可以从 sqlite.org下载并安装 SQLite 工具 。
使用 SQLite通过编程语言与数据库进行交互是很常见的 。因此,像 JAVA、Python、Lua、php、Ruby、C++ 以及其他编程语言都提供了 SQLite 的接口(或“绑定”) 。但是,在使用这些库之前,了解数据库引擎的实际情况以及为什么你对数据库的选择很重要是有帮助的 。本文向你介绍 SQLite 和
sqlite3
命令,以便你熟悉该数据库如何处理数据的基础知识 。与 SQLite 交互你可以使用
sqlite3
命令与 SQLite 进行交互 。该命令提供了一个交互式的 shell 程序,以便你可以查看和更新数据库 。$ sqlite3SQLite version 3.34.0 2020-12-01 16:14:00Enter ".help" for usage hints.Connected to a transient in-memory database.Use ".open FILENAME" to reopen on a persistent database.sqlite>
该命令将你使你处于 SQLite 的子 shell 中,因此现在的提示符是 SQLite 的提示符 。你以前使用的 Bash 命令在这里将不再适用 。你必须使用 SQLite 命令 。要查看 SQLite 命令列表,请输入 .help
:sqlite> .help.archive ...Manage SQL archives.auth ON|OFFSHOW authorizer callbacks.backup ?DB? FILEBackup DB (DEFAULT "main") TO FILE.bail ON|offStop after hitting an error.DEFAULT OFF.binary ON|offTurn BINARY output ON OR off.DEFAULT OFF.cd DIRECTORYCHANGE the working directory TO DIRECTORY[...]
这些命令中的其中一些是二进制的,而其他一些则需要唯一的参数(如文件名、路径等) 。这些是 SQLite Shell 的管理命令,不是用于数据库查询 。数据库以结构化查询语言(SQL)进行查询,许多 SQLite 查询与你从 MySQL和MariaDB数据库中已经知道的查询相同 。但是,数据类型和函数有所不同,因此,如果你熟悉另一个数据库,请特别注意细微的差异 。创建数据库启动 SQLite 时,可以打开内存数据库,也可以选择要打开的数据库:
$ sqlite3 mydatabase.db
如果还没有数据库,则可以在 SQLite 提示符下创建一个数据库:sqlite> .open mydatabase.db
现在,你的硬盘驱动器上有一个空文件,可以用作 SQLite 数据库 。文件扩展名 .db
是任意的 。你也可以使用.sqlite
或任何你想要的后缀 。创建一个表数据库包含一些表table,可以将其可视化为电子表格 。有许多的行(在数据库中称为记录record)和列 。行和列的交集称为字段field 。
结构化查询语言(SQL)以其提供的内容而命名:一种以可预测且一致的语法查询数据库内容以接收有用的结果的方法 。SQL 读起来很像普通的英语句子,即使有点机械化 。当前,你的数据库是一个没有任何表的空数据库 。
你可以使用
CREATE
来创建一个新表,你可以和IF NOT EXISTS
结合使用 。以便不会破坏现在已有的同名的表 。你无法在 SQLite 中创建一个没有任何字段的空表,因此在尝试
推荐阅读
- Ansible自动化工具快速入门实践
- 超详细Prometheus入门教程
- U盘装系统win10步骤和详细教程,U盘装windows10系统教程-_2
- win7旗舰版32位系统安装教程?win7系统一键32位升级64位
- raise3d打印机使用教程?raise3d打印机中文说明书
- 云计算核心技术Docker教程:docker-compose控制服务启动和关闭顺序
- win7如何重装系统教程-电脑win7系统如何重装-_1
- 基于SpringBoot的微服务架构与K8S容器部署实践
- 如何在Linux安装防火墙,你可能不会见到这么详细的教程。
- ps两寸证件照制作教程最新的?ps制作2寸证件照片的步骤