SQLite 命令:

退出SQLite方法(你猜为什么这个在前面):

方法一:输入 .quit或者 .exit 并回车

方法二:使用快捷键: Ctrl + D 组合键。

这代表“文件结束符”(EOF),在 Linux 终端中这通常意味着退出当前交互式程序。

点命令(元命令)—— 管理数据库和查看信息

sqlite> 提示符下输入,不需要以分号结尾。

命令 缩写 作用 使用示例
.help 显示所有点命令的帮助信息(最常用,记不住时就敲它) .help
.tables 列出当前数据库中的所有表 .tables
.schema 查看表的创建语句(表结构) .schema 表名(不跟表名则显示全部)
.database 查看当前打开的数据库文件路径 .database
.quit / .exit 退出 SQLite 命令行 .quit
.open 打开或创建新的数据库文件 .open test.db
.read 执行外部 SQL 脚本文件 .read create.sql
.output 将查询结果输出到文件(而不是屏幕) .output result.txt 后再执行查询
.import 从 CSV 等文本文件导入数据到表 .import data.csv 表名
.export 将表数据导出为 CSV 文件 .export --csv 表名 > data.csv
.header on/off 显示或隐藏查询结果的列名(默认 off,建议开启) .header on
.mode 切换输出格式(如 column、csv、list、html) .mode column(使对齐更美观)
.nullvalue 设置 NULL 值显示的替代文本 .nullvalue NULL.nullvalue (空)
.show 查看当前所有设置(header、mode 等) .show
.shell 临时退出到系统 Shell 执行命令(输入 exit 返回) .shell ls -l
.clone 克隆当前数据库到一个新文件 .clone new.db

使用技巧:刚进入 SQLite 时,建议先执行 .header on.mode column,这样查询结果带列名且对齐美观。

SQL 语句(数据操作)—— 增删改查

这些是标准的 SQL 命令,必须以分号 ; 结尾

分类 关键词 作用 示例
查询 SELECT 查询表中的数据(最核心) SELECT * FROM users WHERE age > 18;
插入 INSERT INTO 向表中插入新数据 INSERT INTO users (name, age) VALUES ('张三', 25);
更新 UPDATE 修改表中的已有数据 UPDATE users SET age = 26 WHERE name = '张三';
删除 DELETE FROM 删除表中的数据(可带条件) DELETE FROM users WHERE age < 18;
建表 CREATE TABLE 创建新表并定义字段 CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT);
删表 DROP TABLE 删除整个表(包含数据和结构) DROP TABLE users;
修改表 ALTER TABLE 添加或重命名列(不支持删列) ALTER TABLE users ADD COLUMN email TEXT;
创建索引 CREATE INDEX 为字段创建索引以加速查询 CREATE INDEX idx_name ON users(name);
事务控制 BEGIN / COMMIT / ROLLBACK 批量操作的回滚和提交 BEGIN; 执行多条操作 COMMIT;

实用组合技巧

场景 操作步骤
查看表结构 .tables 列出表 → .schema 表名 查看详细结构
美化输出 .header on + .mode column(让结果像表格一样对齐)
导出数据为 CSV .mode csv.output data.csvSELECT * FROM 表名;.output stdout(恢复输出到屏幕)
导入 CSV 文件 .mode csv.import data.csv 表名(注意表需提前存在)
清屏 .shell clear(调用系统 clear 命令)
查看当前数据库 .database(显示路径,确认你在操作哪个文件)

两个救命技巧

  1. 忘记命令:输入 .help,所有点命令都会列出来。
  2. 误入多行模式:如果不小心输错了 SQL(比如没写分号),提示符变成 ...>,按 Ctrl + C 取消此行,回到 sqlite>