
C/C++
DuckDB provides a C/C++ API, allowing developers to embed the database directly into C and C++ applications.
DuckDB provides a C/C++ API, allowing developers to embed the database directly into C and C++ applications. This integration enables high-performance data processing and analytics capabilities within native applications. The C API follows a design similar to SQLite, making it familiar for developers experienced with that system. For C++ users, DuckDB offers a more idiomatic interface, leveraging modern C++ features. By using the C/C++ API, developers can execute SQL queries, manage transactions, and interact with DuckDB's in-memory or persistent storage directly from their C or C++ codebase. This low-level access is particularly useful for applications requiring tight integration with the database engine or those aiming to minimize overhead in data-intensive operations.
Related terms
The relational API in DuckDB provides a fluent, Pythonic interface for constructing and executing SQL queries programmatically.
API →An API - Application Programming Interface - is a set of rules and protocols that allows different software applications to communicate with each other.
Arrow Flight →Arrow Flight is a high-performance, gRPC-based protocol from the Apache Arrow project for transferring large columnar datasets between systems with minimal serialization overhead.
in-memory database →An in-memory database is a type of database management system that primarily relies on a computer's main memory (RAM) for data storage and processing, as…
FAQS
Yes. DuckDB provides both a C and a C++ API for embedding the database directly into native applications. The C API is designed similarly to SQLite's, while the C++ interface leverages modern C++ features for a more idiomatic experience.
The C/C++ API lets developers execute SQL queries, manage transactions, and interact with DuckDB's in-memory or persistent storage directly from C or C++ code. It is well suited to applications that need tight integration with the database engine or want to minimize overhead in data-intensive operations.
