soci
turbodbc
soci | turbodbc | |
---|---|---|
3 | 2 | |
1,342 | 603 | |
0.4% | 0.0% | |
8.7 | 8.0 | |
3 days ago | 4 days ago | |
C++ | C++ | |
Boost Software License 1.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
soci
-
Propagating an exception from another thread and up to the main program. No destructors allowed yet?
FWIW, I found this: https://github.com/SOCI/soci/issues/256
-
c++ project
As regards to database access – if you don't have a framework that provides a database access layer, you'll need to select a database library. All databases have client libraries with C language bindings which can also be used from C++; many have native C++ bindings as well. Another choice would be to select a C++ library that supports multiple databases, such as SOCI.
-
An SQL Solution for Jupyter
but we offer full support to SOCI meaning if these folks: https://github.com/SOCI/soci support it and the dependencies exist and work for 32bit, than yes.
turbodbc
-
Arrowdantic 0.1.0 released
It supports reading from and writing to ODBC compliant databases at likely similar performance as turbodbc and it does not require conda to install.
-
arrow-odbc: Fetch arrow arrays from an ODBC data source in a pip installable environment
turbodbc is great, but a pain to build, at least without conda. arrow-odbc-py uses cffi (rather than PyO3) to talk to a rust backend and than uses the Arrow C Data interface to provide the user with pyarrow compatible arrow arrays. The use of a dedicated C interface in both places, avoids linking directly against the Python C-Interpreter as well as the specific C++ Arrow libraries your pyarrow version depends on. Avoiding some pain of dependency hell.
What are some alternatives?
sqlite_modern_cpp - The C++14 wrapper around sqlite library
arrow-odbc-py - Read Apache Arrow batches from ODBC data sources in Python
SQLite - Unofficial git mirror of SQLite sources (see link for build instructions)
vinum - Vinum is a SQL processor for Python, designed for data analysis workflows and in-memory analytics.
TileDB - The Universal Storage Engine
pyexasol - Exasol Python driver with low overhead, fast HTTP transport and compression
tntdb
Pytorch - Tensors and Dynamic neural networks in Python with strong GPU acceleration
LevelDB - LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.
arrow2 - Transmute-free Rust library to work with the Arrow format
LMDB++ - C++11 wrapper for the LMDB embedded B+ tree database library.
odbc - Connect to ODBC databases (using the DBI interface)