Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

duckdb/duckdb-postgres

Repository files navigation

The Postgres extension allows DuckDB to directly read and write data from a running Postgres database instance. The data can be queried directly from the underlying Postgres database. Data can be loaded from Postgres tables into DuckDB tables, or vice versa.

Reading Data from Postgres

To make a Postgres database accessible to DuckDB use theATTACH command:

ATTACH'dbname=postgresscanner'AS postgres_db (TYPE postgres);

TheATTACH command takes as input alibpq connection string - which is a set ofkey=value pairs separated by spaces. Below are some example connection strings and commonly used parameters. A full list of available parameters can be foundin the Postgres documentation.

dbname=postgresscannerhost=localhost port=5432 dbname=mydb connect_timeout=10
NameDescriptionDefault
hostName of host to connect tolocalhost
hostaddrHost IP addresslocalhost
portPort Number5432
userPostgres User Name[OS user name]
passwordPostgres Password
dbnameDatabase Name[user]
passfileName of file passwords are stored in~/.pgpass

The tables in the file can be read as if they were normal DuckDB tables, but the underlying data is read directly from Postgres at query time.

D SHOW ALL TABLES;┌───────────────────────────────────────┐│                 name                  ││varchar                │├───────────────────────────────────────┤│ uuids                                 │└───────────────────────────────────────┘DSELECT*FROMpostgres_db.uuids;┌──────────────────────────────────────┐│                  u                   ││                 uuid                 │├──────────────────────────────────────┤│ 6d3d2541-710b-4bde-b3af-4711738636bf ││NULL                                 ││00000000-0000-0000-0000-000000000001 ││ ffffffff-ffff-ffff-ffff-ffffffffffff │└──────────────────────────────────────┘

For more information on how to use the connector, refer to thePostgres documentation on the website.

Building & Loading the Extension

The DuckDB submodule must be initialized prior to building.

git submodule initgit pull --recurse-submodules

To build, type

make

To run, run the bundledduckdb shell:

 ./build/release/duckdb -unsigned  # allow unsigned extensions

Then, load the Postgres extension like so:

LOAD'build/release/extension/postgres_scanner/postgres_scanner.duckdb_extension';

Releases

No releases published

Packages

No packages published

Contributors20

Languages


[8]ページ先頭

©2009-2025 Movatter.jp