SQLite 命令
                           
天天向上
发布: 2025-03-04 08:24:29

原创
635 人浏览过

SQLite 常用命令大全

SQLite 提供了一系列命令来管理数据库、表和数据。下面是 SQLite 主要的命令分类及其示例:


1. SQLite 基本命令

这些命令用于管理数据库、查看 SQLite 版本和退出 SQLite。

命令说明
.help显示所有 SQLite 命令的帮助信息
.version显示 SQLite 版本信息
.exit.quit退出 SQLite 交互模式
.databases显示当前连接的数据库
.tables显示当前数据库中的所有表
.schema [table_name]显示表结构(模式)
.mode column以列模式显示查询结果
.headers on显示查询结果的列名
.show显示 SQLite 当前的配置信息

示例:

sqlite3 test.db   # 进入 SQLite 并打开 test.db 数据库
sqlite> .tables   # 查看当前数据库中的表
sqlite> .schema users  # 查看 users 表的结构
sqlite> .exit     # 退出 SQLite

2. SQLite 数据库管理

创建数据库

SQLite 采用 单文件存储,创建数据库时,只需指定数据库文件名:

sqlite3 mydatabase.db

如果 mydatabase.db 文件不存在,它将自动创建。

删除数据库

SQLite 不提供直接删除数据库的命令,删除数据库文件即可:

rm mydatabase.db  # Linux/macOS
del mydatabase.db # Windows

连接数据库

在 SQLite 交互模式下打开已有数据库:

sqlite3 mydatabase.db

3. SQLite 表管理

创建表

CREATE TABLE users (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    age INTEGER
);

查看表结构

.schema users

删除表

DROP TABLE users;

重命名表

ALTER TABLE users RENAME TO customers;

添加新列

ALTER TABLE users ADD COLUMN email TEXT;

4. SQLite 数据操作

插入数据

INSERT INTO users (name, age) VALUES ('Alice', 25);
INSERT INTO users (name, age) VALUES ('Bob', 30);

查询数据

SELECT * FROM users;
SELECT name, age FROM users WHERE age > 25;
SELECT COUNT(*) FROM users;

更新数据

UPDATE users SET age = 35 WHERE name = 'Alice';

删除数据

DELETE FROM users WHERE name = 'Bob';
DELETE FROM users;  -- 清空表数据

5. SQLite 事务管理

开启事务

BEGIN TRANSACTION;

提交事务

COMMIT;

回滚事务

ROLLBACK;

示例:

BEGIN TRANSACTION;
INSERT INTO users (name, age) VALUES ('Charlie', 40);
ROLLBACK;  -- 撤销插入操作

6. SQLite 索引

创建索引

CREATE INDEX idx_users_name ON users (name);

删除索引

DROP INDEX idx_users_name;

7. SQLite 视图

创建视图

CREATE VIEW user_names AS
SELECT id, name FROM users;

查询视图

SELECT * FROM user_names;

删除视图

DROP VIEW user_names;

8. SQLite 导出和导入数据

导出数据(CSV 格式)

sqlite> .mode csv
sqlite> .headers on
sqlite> .output users.csv
sqlite> SELECT * FROM users;
sqlite> .output stdout  # 重新设置输出到终端

导入数据(CSV 格式)

sqlite> .mode csv
sqlite> .import users.csv users

9. SQLite 高级命令

查看数据库大小

SELECT page_count * page_size as size_in_bytes FROM pragma_page_count(), pragma_page_size();

启用/禁用外键

PRAGMA foreign_keys = ON;

优化数据库

VACUUM;

10. SQLite GUI 工具

如果你想要使用图形界面管理 SQLite 数据库,可以使用以下工具:

  • DB Browser for SQLite(免费,推荐)下载地址
  • SQLiteStudio
  • DBeaver

总结

分类常用命令
基本命令.help .version .exit .tables .schema
数据库管理sqlite3 mydatabase.db rm mydatabase.db
表管理CREATE TABLE DROP TABLE ALTER TABLE
数据操作INSERT SELECT UPDATE DELETE
事务BEGIN TRANSACTION COMMIT ROLLBACK
索引CREATE INDEX DROP INDEX
视图CREATE VIEW DROP VIEW
导入/导出.mode csv .import .output
优化PRAGMA VACUUM

你想要先从哪个部分开始练习?可以从创建数据库和表开始,还是直接操作数据?更多详细内容请关注其他相关文章。

发表回复 0

Your email address will not be published. Required fields are marked *