Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/srombauts/sqlitecpp.git |
| VCS Type | git |
| VCS Version | master |
| Last Updated | 2026-10-24 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| SQLiteCpp | 4.0.0 |
README
SQLiteC++
SQLiteC++ (SQLiteCpp) is a lean and easy to use C++ SQLite3 wrapper.
Supported release lines
-
SQLiteCpp 4.x (
master) is the actively developed line. It requires C++17 and SQLite 3.38.0 or newer, and may introduce API/ABI-breaking changes. -
SQLiteCpp 3.x (
sqlitecpp-3.x) is the C++11-compatible maintenance line, starting from release 3.4.0. It keeps the SQLite 3.8.7 minimum and focuses on compatible bug fixes and backports without adopting the breaking changes of 4.x. The core library supports C++11; some optional headers use C++14.
The older sqlitecpp-3.4.x
branch remains available for the 3.4.x series; ongoing C++11 maintenance targets sqlitecpp-3.x.
About SQLiteC++:
SQLiteC++ offers an encapsulation around the native C APIs of SQLite, with a few intuitive and well documented C++ classes.
License:
Copyright (c) 2012-2026 Sébastien Rombauts (sebastien.rombauts@gmail.com)
Distributed under the MIT License (MIT) (See accompanying file LICENSE.txt or copy at http://opensource.org/licenses/MIT)
Note on redistribution of SQLite source files
As stated by the MIT License, you are welcome to reuse, modify, and redistribute the SQLiteCpp source code the way you want it to, be it a git submodule, a subdirectory, or a selection of some source files.
I would love a mention in your README, a web link to the SQLite repository, and a mention of the author, but none of those are mandatory.
About SQLite underlying library:
SQLite is a library that implements a serverless transactional SQL database engine. It is the most widely deployed SQL database engine in the world. All of the code and documentation in SQLite has been dedicated to the public domain by the authors. http://www.sqlite.org/about.html
The goals of SQLiteC++ are:
- to offer the best of the existing simple C++ SQLite wrappers
- to be elegantly written with modern C++17 design, STL, exceptions and RAII idiom
- to keep dependencies to a minimum (C++17 STL and SQLite3)
- to be portable
-
to be light and fast
- to be thread-safe only as much as SQLite “Multi-thread” mode (see below)
- to have a good unit test coverage
- to use API names sticking with those of the SQLite library
- to be well documented with Doxygen tags, and with some good examples
- to be well maintained
- to use a permissive MIT license, similar to BSD or Boost, for proprietary/commercial usage
It is designed using the Resource Acquisition Is Initialization (RAII) idiom (see http://en.wikipedia.org/wiki/Resource_Acquisition_Is_Initialization), and throwing exceptions in case of SQLite errors (except in destructors, where assert() are used instead). Each SQLiteC++ object must be constructed with a valid SQLite database connection, and then is always valid until destroyed.
Supported platforms:
The platform and compiler requirements below describe master (SQLiteCpp 4.x).
The continuous integration builds and tests on:
- Ubuntu 22.04 and 24.04, plus the current Ubuntu GitHub Actions runner
- the current Windows GitHub Actions runner, plus Visual Studio 2022 Release builds for Win32/x86 with shared and static libraries
- the minimum MSVC toolset, VS2017 15.9 / v141, installed on the Windows 2022 runner
- the current macOS GitHub Actions runner
The build matrices cover GCC, Clang, AppleClang, MinGW, and MSVC. The library requires C++17, and the CMake compatibility workflow also exercises C++20.
Dependencies
- CMake 3.16 or newer when using the CMake build
- a C++17-capable compiler and standard library
- Visual Studio 2017 15.9 (MSVC 19.16 / v141 toolset 14.16) or newer when using MSVC
- exception support (the class Exception inherits from std::runtime_error)
File truncated at 100 lines see the full file