SQLite 的使用

SQLite 是一个轻量级、自包含和无服务器的关系型数据库管理系统(RDBMS),广泛应用于嵌入式系统、移动应用程序和小中型网站。它易于创建、需要的配置较少,并且提供了用于管理和操作数据的强大功能集。本文,我们将带领你从头开始使用 SQLite,包括安装和使用流行的 Chinook 样本数据库(即 SQL 示例)。

安装 SQLite

Windows:

  • 访问 SQLite 的安装网页:SQLite Download Page.
  • 向下滚动页面到"Precompiled Binaries for Windows"部分。
  • 下载适用于你的系统架构(32-bit 或 64-bit)的预编译二进制文件。
  • 将下载的 ZIP 文件解压缩到你计算机的某个位置。
  • 打开解压缩的文件夹并找到 sqlite3.dll 可执行文件。
  • 为了可以从任意命令提示符窗口访问 SQLite,需要将包含 sqlite3.dll 的文件夹添加到系统的 PATH 环境变量中。

macOS:

  • 在 macOS 中已经预安装了 SQLite,所以不需要再单独安装它。
  • 打开终端应用程序。
  • 输入 sqlite3 并按 Enter 键以启动 SQLite shell。

Linux:

  • 大部分 Linux 发行版都预装了 SQLite。如果没有预装,你可以使用包管理器安装。
    • Debian/Ubuntu:sudo apt-get install sqlite3
    • Red Hat/Fedora:sudo dnf install sqlite
    • Arch Linux: sudo pacman -S sqlite
  • 安装完后,打开终端应用程序并输入 sqlite3 来启动 SQLite shell。
  • 安装 Chinook 数据库 的压缩文件夹并解压缩。

    你会找到一个名为 chinook.db 的文件。让我们在 Navicat 中新建一个数据库连接。

  • 从主菜单中打开一个"新建连接"对话框,选择"文件"->"新建连接"->"SQLite...":

  • 在对话框中,输入"Chinook"作为连接名字,然后点击省略号按钮 [...] 以导航到数据库文件选择。点击"测试连接"以验证数据库是否连接成功。(注意,Chinook 数据库不需要输入用户名和密码):

  • 点击"确定"按钮关闭对话框。你可以看到连接面板中显示了新建的连接:

Chinook 的基础 SQL 操作

连接到 Chinook 数据库:

现在我们已经创建了一个新的 Chinook 数据库连接,让我们打开连接并与数据库交互,操作如下:

  • 在连接面板中找到 Chinook 项目并点击以选中它。
  • 从主菜单中选择"文件"->"打开连接",这将显示 main 数据库。

查询数据

从 Chinook 数据库检索信息,你可以使用 SELECT 语句。例如,"SELECT * FROM artists;":

筛选数据

筛选可以缩小结果集的范围。例如,尝试输入"SELECT trackid, name, composer FROM tracks WHERE composer = 'Ludwig van Beethoven';":

更新记录

更新已存在的数据,我们可以使用 UPDATE 语句,或者简单地在对应位置编辑数据!

插入记录

添加新的记录,不需要使用 INSERT 语句;在 Navicat 中,我们可以简单地点击添加记录按钮:

表中会添加一个新的空行,并且显示待输入数据状态:

删除记录

在 Navicat 中删除记录同样简单;只需要选中需要移除的行并点击删除键,这将弹出一个对话框,询问是否确认删除该记录。:

总结

在本文,我们了解了如何使用 SQLite,包括其安装过程以及如何对流行的 Chinook 数据库示例执行基本 SQL 操作。无论你是初学者还是有经验的开发人员,SQLite 的简单性和多功能性使其成为更多应用程序的不错选择。而且,Navicat for SQLite (或 Navicat Premium)16 是探索 SQLite 更高级功能和能力的完美工具,更有效地管理你的数据。

往期回顾

Navicat 16 已支持 Redis

Navicat 16 已支持华为云 GaussDB

Navicat 16 已支持蚂蚁集团 OceanBase 全线数据库

Navicat 常见技术教程

Navicat 入选中国信通院发布的《中国数据库产业图谱(2023)》

相关推荐
奶糖趣多多3 分钟前
Redis知识点
数据库·redis·缓存
CoderIsArt1 小时前
Redis的三种模式:主从模式,哨兵与集群模式
数据库·redis·缓存
师太,答应老衲吧3 小时前
SQL实战训练之,力扣:2020. 无流量的帐户数(递归)
数据库·sql·leetcode
Channing Lewis4 小时前
salesforce case可以新建一个roll up 字段,统计出这个case下的email数量吗
数据库·salesforce
毕业设计制作和分享5 小时前
ssm《数据库系统原理》课程平台的设计与实现+vue
前端·数据库·vue.js·oracle·mybatis
ketil275 小时前
Redis - String 字符串
数据库·redis·缓存
Hsu_kk6 小时前
MySQL 批量删除海量数据的几种方法
数据库·mysql
编程学无止境6 小时前
第02章 MySQL环境搭建
数据库·mysql
knight-n7 小时前
MYSQL库的操作
数据库·mysql
包饭厅咸鱼7 小时前
QML----复制指定下标的ListModel数据
开发语言·数据库