rusqlite
wasm-sqlite
Our great sponsors
rusqlite | wasm-sqlite | |
---|---|---|
17 | 1 | |
2,692 | 47 | |
4.6% | - | |
8.9 | 0.0 | |
5 days ago | about 1 year ago | |
Rust | Rust | |
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.
rusqlite
-
SQLite + Rust: Building a CLI Password Vault 🦀
"Rusqlite is an ergonomic wrapper for using SQLite from Rust." - Crates.io
- WASM SQL database recommendations wanted
-
SQLite Release 3.42.0
Create a connection per task. WAL is probably a good idea.
Even using SERIALIZED mode, sqlite has multiple APIs which are completely broken if two clients touch the same connection (https://github.com/rusqlite/rusqlite/issues/342#issuecomment...).
Don't bother, just don't share connections between threads and use the regular multi-thread mode (do use that though).
-
Embedded SQL database
As far as I know, the only option for an embedded SQL database is SQLite. The most actively maintained one, for rust, seems to be rusqlite (https://github.com/rusqlite/rusqlite).
-
SQLite extension to query Excel (.xlsx, .xls, .ods) files as virtual tables
Yes, but it's readonly. Also they did not merge loadable extensions support, which I need - https://github.com/rusqlite/rusqlite/pull/910
-
Rust for competitive programming
rusqlite 0.27.0, which looks like it's still the latest version
-
Store SQLite in Cloudflare Durable Objects
SQLite is written in C, while workers is based on V8 isolates, so it mainly runs JavaScript. Fortunately, it also supports running WASM through initialising and calling WASM modules via JavaScript. Emscripten can be used to build WASM from C, but I'd rather use it through Rust (using rusqlite), so this is what I focus on right away. Workers can also be written entirely in Rust using worker-rs.
-
I wrote a telegram bot in rust - a brief story and bot description
For the persistence layer I used Rusqlite and r2d2-sqlite for creating a connection pool.
-
Is the chrono crate unmaintained?
There are feature flags in chrono that make possible to disable usage of time: https://github.com/rusqlite/rusqlite/pull/1031
-
Hey Rustaceans! Got an easy question? Ask here (10/2021)!
I want to use arrays in sqlite but the documentations for rusqlite doesn't have examples of how to use the extra array feature. How do I store and search text arrays in rusqlite?
wasm-sqlite
-
Store SQLite in Cloudflare Durable Objects
The whole code can be found here: github.com/rkusa/wasm-sqlite/blob/main/wasm/src/vfs.rs. By reducing all down to the two methods get_page and put_page (to which I get back later in the post), the VFS ended up being a generic VFS for when you want to persist SQLite pages as separate files/objects. Using it anywhere else than a DO would just be a matter of providing a different implementation to those two methods.
What are some alternatives?
SQLite - Interface to SQLite
rust-sqlite3 - Rustic bindings for sqlite3
r2d2 - A generic connection pool for Rust
rustsqlite
cross - “Zero setup” cross compilation and “cross testing” of Rust crates
Gibbs MySQL Spyglass - Gibbs MySQL Spyglass
SQLite - Official Git mirror of the SQLite source tree
coreutils - Cross-platform Rust rewrite of the GNU coreutils
Cargo - The Rust package manager
teloxide - 🤖 An elegant Telegram bots framework for Rust
sqlite-vfs - Build SQLite virtual file systems (VFS) by implementing a simple Rust trait.
turbosql - An easy local data persistence layer for Rust, backed by SQLite.