连接或创建数据库

要使用 DuckDB,您首先必须创建与数据库的连接。确切的语法在不同的客户端API之间有所不同,但通常涉及传递一个参数来配置持久性。

持久性

DuckDB 可以在持久模式下运行,数据保存到磁盘,也可以在内存模式下运行,整个数据集存储在主内存中。

持久数据库

要创建或打开一个持久数据库,创建连接时设置数据库文件的路径,例如 my_database.duckdb。这个路径可以指向一个现有的数据库,或者指向一个尚不存在的文件,DuckDB 将根据需要在该位置打开或创建数据库。文件可以有任意扩展名,但 .db.duckdb 是两个常见的选择,有时也使用 .ddb

提示

在持久数据库上运行允许数据溢出到磁盘,从而支持比内存大的工作负载

从 v0.10 版本开始,DuckDB 的存储格式是向后兼容的,即 DuckDB 能够读取由旧版本的 DuckDB 生成的数据库文件。例如,DuckDB v0.10 可以读取并操作由上一个版本的 DuckDB,v0.9 创建的文件。有关 DuckDB 存储格式的更多详细信息,请参见存储页面

内存数据库

DuckDB 可以在内存模式下运行。在大多数客户端中,通过传递特殊值 :memory: 作为数据库文件或省略数据库文件参数来激活内存模式。在内存模式下,不会将数据持久化到磁盘,因此,当进程完成后,所有数据都会丢失。