SQLite3 的数据导入和导出通常可以通过几种不同的方法来完成,包括使用命令行工具、SQL 语句以及编程语言中的库。以下是一些常用的方法:
数据导出
- 使用
.dump命令导出整个数据库: 在命令行中,你可以使用 SQLite3 的.dump命令将整个数据库导出为一个 SQL 文件,其中包含重建数据库所需的所有 SQL 语句。
bash
sqlite3 mydatabase.db .dump > mydatabase_dump.sql
- 使用
.dump命令导出特定表: 你也可以只导出数据库中的一个或多个表。
bash
sqlite3 mydatabase.db ".dump CREATE TABLE my_table" > my_table_dump.sql
sqlite3 mydatabase.db ".dump SELECT * FROM my_table" >> my_table_dump.sql
- 使用
sqlite3命令行导出为 CSV: 你可以将表导出为 CSV 文件,这在进行数据分析时非常有用。
bash
sqlite3 mydatabase.db ".mode csv" ".output my_table.csv" "SELECT * FROM my_table;"
数据导入
- 使用
.read命令导入 SQL 文件: 如果你有一个包含 SQL 语句的文件,可以使用.read命令将其导入 SQLite3 数据库。
bash
sqlite3 mydatabase.db < mydatabase_dump.sql
- 使用
.csv模式导入 CSV 文件: 你可以将 CSV 文件导入 SQLite3 数据库中的表。
bash
sqlite3 mydatabase.db ".mode csv" ".import my_table.csv my_table"
- 使用 SQLite3 命令行插入数据: 你也可以直接在命令行中使用
INSERT INTO语句来导入数据。
sql
sqlite3 mydatabase.db "INSERT INTO my_table VALUES ('value1', 'value2', ...);
- 使用编程语言导入数据: 在 Python 中,你可以使用
sqlite3模块来导入数据。例如:
```python import sqlite3
conn = sqlite3.connect('mydatabase.db') c = conn.cursor()
# 导入数据 c.execute("INSERT INTO my_table VALUES ('value1', 'value2', ...)")
conn.commit() conn.close() ```
- 使用数据库管理工具: 使用如 DB Browser for SQLite 这样的图形界面工具,可以更直观地导入和导出数据。
请注意,导入和导出数据时,确保数据格式和数据库模式匹配,以避免数据损坏或导入错误。在进行大量数据导入之前,建议备份数据库。