{"repo":"duckdb/duckdb-rs","free":true,"listed":false,"github":"https://github.com/duckdb/duckdb-rs","clone":"git clone https://github.com/duckdb/duckdb-rs.git","description":"Ergonomic bindings to duckdb for Rust","language":"Rust","stars":954,"topics":["duckdb","ffi-bindings","ffi","rust","database","olap","arrow"],"license":"MIT","category":"databases-storage","readme_excerpt":"duckdb-rs duckdb-rs is an ergonomic Rust wrapper for DuckDB. You can use it to: - Query DuckDB with type-safe bindings and an API inspired by rusqlite. - Read and write Arrow, Parquet, JSON, and CSV formats natively. - Create DuckDB extensions in Rust with custom scalar and table functions. Quickstart Create a new project and add the duckdb crate: Update src/main.rs with the following code: Execute the program with cargo run and watch DuckDB in action! Examples The following examples demonstrate various features and use cases of duckdb-rs: - basic - Basic usage including creating tables, inserting data, and querying with and without Arrow. - appender - Bulk data insertion using the appender API with transactions. - arrow vtab - Querying an in-memory Arrow RecordBatch from DuckDB SQL (requires the vtab-arrow feature). - parquet - Reading Parquet files directly using DuckDB's Parquet extension. - vscalar - Defining and registering a custom scalar function (requires the vscalar feature). - vtab - Defining a custom table function returning primitive, LIST, and STRUCT columns (requires the vtab feature). - repl - Interactive SQL REPL. - hello-ext - A DuckDB extension written in Rust (see Building and loading extensions). Run an executable example using your configured DuckDB library: Pass each example's required feature when applicable: If you do not have a system DuckDB library and are not using DUCKDB DOWNLOAD LIB , add bundled to the feature list. For example: hello-ext is a li","default_branch":null,"files":null,"tree":[],"storefront":"/r/duckdb","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/duckdb/duckdb-rs/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}