A list of paid, free or open source C++ (C plus plus) Database libraries, plugins and tools for DBMS, SQL, OLAP, SQLite, NoSQL, key value storage, ORM’s, database wrappers and abstraction layers and more. Sourced under a creative commons. This list will be updated regularly. Email over the URL, if you wish to be included.

Libraries for C++ databases

  • ClickHouse – C++ client for ClickHouse DBMS. [Apache2]
  • DuckDB – in-process SQL OLAP Database Management System. [MIT]
  • hiberlite – C++ Object-relational mapping for sqlite3. [BSD]
  • Hiredis – A minimalistic C client library for the Redis database. [BSD]
  • Kvrocks – A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol. [Apache2]
  • LevelDB – A fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. [BSD]
  • libpqxx – The official C++ client API for PostgreSQL. [BSD-3-Clause]
  • LMDB – Very fast embedded key/value store with full ACID semantics. [OpenLDAP]
  • LMDB++ – C++11 wrapper for the LMDB embedded database library. [PublicDomain]
  • MongoDB C Driver – MongoDB client library for C. [Apache2]
  • MongoDB C++ Driver – C++ driver for MongoDB. [Apache2]
  • MongoDB Libbson – A BSON utility library. [Apache2]
  • MySQL++ – A C++ wrapper for MySQL’s C API. [LGPL]
  • nanodbc – A small C++ wrapper for the native C ODBC API. [MIT]
  • ODB – An open-source, cross-platform, and cross-database object-relational mapping (ORM) system for C++. [GPLv2]
  • redis3m – Wrapper of hiredis with clean C++ interface, supporting sentinel and ready to use patterns. [Apache2]
  • RocksDB – Embedded key-value store for fast storage from facebook. [BSD]
  • SimDB – High performance, shared memory, lock free, cross platform, single file, minimal dependencies, C++11 key-value store. [Apache2]
  • SOCI – A database abstraction layer for C++. [Boost]
  • Speedb – Community-led project: A RocksDB compliant high performance scalable embedded key-value store. [Apache2]
  • SQLite – A completely embedded, full-featured relational database in a few 100k that you can include right into your project. [PublicDomain]
  • SQLiteC++ – SQLiteC++ (SQLiteCpp) is a smart and easy to use C++ SQLite3 wrapper. [MIT]
  • sqlite_modern_cpp – Header only C++14 wrapper around sqlite library. [MIT]
  • sqlite_orm – SQLite ORM light header only library for modern C++. [AGPL + paid MIT]
  • sqlpp11 – A type safe embedded domain specific language for SQL queries and results in C++. [BSD-2-Clause]
  • TileDB – Fast Dense and Sparse Multidimensional Array DBMS. [MIT] website
  • UnQLite – A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] website
  • upscaledb – An embedded “typed” key/value store with a built-in query interface. [GPLv3]
  • TigerBeetleDB C++ client (Community) – TigerBeetle is a financial accounting database designed for mission critical safety and performance to power the future of financial services. [BSL-1.0]

Tags: c++, open source, c plus plus, c++ tools, c++ plugins, c++ libraries, c plus plus tools, c plus plus plugins, c plus plus libraries, DBMS, SQL, OLAP, SQLite, NoSQL, key value storage, ORM, database wrappers, abstraction layers, c++ DBMS, c++ SQL, c++ OLAP, c++ SQLite, c++ NoSQL, c++ key value storage, c++ ORM, c++ database wrappers, c++ abstraction layers

Image: Unsplash License.

Portions of this text under: MIT license