#libsql #sqlite #rows #gateway #open

已删除 libsql_core

libSQL库:与数据库交互的主要网关

1 个不稳定版本

0.0.1 2023年7月11日

#libsql 中排名第 21

MIT 许可证

295KB
6.5K SLoC

libSQL Rust API

入门指南

连接到数据库

use libsql_core::Database;

let db = Database::open("hello.db");

let conn = db.connect().unwrap();

创建表

conn.execute("CREATE TABLE IF NOT EXISTS users (email TEXT)", ()).unwrap();

向表中插入行

conn.execute("INSERT INTO users (email) VALUES ('[email protected]')", ()).unwrap();

从表中查询行

let rows = conn.execute("SELECT * FROM users WHERE email = ?", params!["[email protected]"]).unwrap().unwrap();
let row = rows.next().unwrap().unwrap();
// prints "[email protected]"
println!("{}", row.get::<&str>(0).unwrap());

开发

设置环境

export LIBSQL_STATIC_LIB_DIR=$(pwd)/../../.libs

构建API

cargo build

运行测试

cargo test

运行基准测试

cargo bench

运行基准测试并生成火焰图

echo -1 | sudo tee /proc/sys/kernel/perf_event_paranoid
cargo bench --bench benchmark -- --profile-time=5

依赖项

~52MB
~889K SLoC