⌘+k ctrl+k
1.3 (稳定版)
搜索快捷键 cmd + k | ctrl + k
EXPORT 和 IMPORT DATABASE 语句

EXPORT DATABASE 命令允许您将数据库内容导出到特定目录。IMPORT DATABASE 命令允许您再次读取这些内容。

示例

将数据库导出到目标目录 'target_directory',作为 CSV 文件

EXPORT DATABASE 'target_directory';

导出到目录 'target_directory',使用给定的 CSV 序列化选项

EXPORT DATABASE 'target_directory' (FORMAT csv, DELIMITER '|');

导出到目录 'target_directory',表序列化为 Parquet

EXPORT DATABASE 'target_directory' (FORMAT parquet);

导出到目录 'target_directory',表序列化为 Parquet,使用 ZSTD 压缩,行组大小为 100,000

EXPORT DATABASE 'target_directory' (
    FORMAT parquet,
    COMPRESSION zstd,
    ROW_GROUP_SIZE 100_000
);

重新加载数据库

IMPORT DATABASE 'source_directory';

或者,使用 PRAGMA

PRAGMA import_database('source_directory');

有关写入 Parquet 文件的详细信息,请参阅数据导入部分的 Parquet 文件页面COPY 语句页面

EXPORT DATABASE

EXPORT DATABASE 命令将数据库的全部内容(包括模式信息、表、视图和序列)导出到特定目录,该目录可以随后再次加载。创建的目录结构如下:

target_directory/schema.sql
target_directory/load.sql
target_directory/t_1.csv
...
target_directory/t_n.csv

schema.sql 文件包含数据库中找到的模式语句。它包含重新构建数据库所需的任何 CREATE SCHEMACREATE TABLECREATE VIEWCREATE SEQUENCE 命令。

load.sql 文件包含一组 COPY 语句,可用于再次从 CSV 文件中读取数据。该文件为模式中找到的每个表都包含一个 COPY 语句。

语法

IMPORT DATABASE

可以通过再次使用 IMPORT DATABASE 命令重新加载数据库,或者手动运行 schema.sql 接着运行 load.sql 来重新加载数据。

语法