50 releases (4 breaking)

0.4.3 Jun 8, 2022
0.3.14 Jun 1, 2022
0.0.1 Mar 29, 2022

#2650 in Database interfaces


Used in multisql-cli

Apache-2.0

260KB
9K SLoC

MultiSQL

docs.rs crates.io codecov Chat LICENSE

See benchmarks

Documentation

For SQL documentation, go to multisql.org

For Rust documentation, go to docs.rs/multisql


lib.rs:

MultiSQL

multisql is a highly modular SQL database engine library written in Rust. It enables flexible querying via Rust interfaces.

SQL Documentation

You can find our SQL documentation at multisql.org.

Examples

use multisql::{Connection, Glue};
let storage = Connection::Sled(String::from("data/example_location/lib_example"))
  .try_into()
  .expect("Storage Creation Failed");
let mut glue = Glue::new(String::from("main"), storage);

glue.execute_many("
  DROP TABLE IF EXISTS test;
  CREATE TABLE test (id INTEGER);
  INSERT INTO test VALUES (1),(2);
  SELECT * FROM test WHERE id > 1;
");

See also

  • [Glue] -- Primary interface
  • [Storage] -- Needed to build an interface
  • [SledStorage] -- Most common type of storage/backend
  • [Value] -- Value wrapper

Dependencies

~10–20MB
~313K SLoC