reefdb
1.0.0
ReefDB هو نظام بسيط لإدارة قواعد البيانات في الذاكرة وعلى القرص مكتوب بلغة Rust، وينفذ إمكانات استعلام SQL الأساسية والبحث عن النص الكامل.
لاستخدام ReefDB، يمكنك الاختيار بين التخزين في الذاكرة ( InMemoryReefDB
) أو التخزين على القرص ( OnDiskReefDB
).
use reefdb :: InMemoryReefDB ;
fn main ( ) {
let mut db = InMemoryReefDB :: new ( ) ;
let queries = vec ! [
"CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)" ,
"INSERT INTO users VALUES (1, 'Alice')" ,
"INSERT INTO users VALUES (2, 'Bob')" ,
"SELECT * FROM users WHERE id = 1" ,
] ;
for query in queries {
let result = db . query ( query ) ;
println ! ( "Result: {:?}" , result ) ;
}
}
use reefdb :: OnDiskReefDB ;
fn main ( ) {
let kv_path = "kv.db" ;
let index = "index.bin" ;
let mut db = OnDiskReefDB :: new ( kv_path . to_string ( ) , index . to_string ( ) ) ;
let queries = vec ! [
"CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)" ,
"INSERT INTO users VALUES (1, 'Alice')" ,
"INSERT INTO users VALUES (2, 'Bob')" ,
"SELECT * FROM users WHERE id = 1" ,
] ;
for query in queries {
let result = db . query ( query ) ;
println ! ( "Result: {:?}" , result ) ;
}
}
use reefdb :: InMemoryReefDB ;
fn main ( ) {
let mut db = InMemoryReefDB :: new ( ) ;
let queries = vec ! [
"CREATE TABLE books (title TEXT, author TEXT, description FTS_TEXT)" ,
"INSERT INTO books VALUES ('Book 1', 'Author 1', 'A book about the history of computer science.')" ,
"INSERT INTO books VALUES ('Book 2', 'Author 2', 'A book about modern programming languages.')" ,
"INSERT INTO books VALUES ('Book 3', 'Author 3', 'A book about the future of artificial intelligence.')" ,
"SELECT title, author FROM books WHERE description MATCH 'computer science'" ,
] ;
for query in queries {
let result = db . query ( query ) ;
println ! ( "Result: {:?}" , result ) ;
}
}
use reefdb :: InMemoryReefDB ;
fn main ( ) {
let mut db = InMemoryReefDB :: new ( ) ;
let queries = vec ! [
"CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)" ,
"INSERT INTO users VALUES (1, 'Alice')" ,
"INSERT INTO users VALUES (2, 'Bob')" ,
"DELETE FROM users WHERE id = 1" ,
"SELECT * FROM users" ,
] ;
for query in queries {
let result = db . query ( query ) ;
println ! ( "Result: {:?}" , result ) ;
}
}
use reefdb :: InMemoryReefDB ;
fn main ( ) {
let mut db = InMemoryReefDB :: new ( ) ;
let queries = vec ! [
"CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)" ,
"INSERT INTO users VALUES (1, 'Alice')" ,
"INSERT INTO users VALUES (2, 'Bob')" ,
"UPDATE users SET name = 'Charlie' WHERE id = 1" ,
"SELECT * FROM users" ,
] ;
for query in queries {
let result = db . query ( query ) ;
println ! ( "Result: {:?}" , result ) ;
}
}
use reefdb :: InMemoryReefDB ;
fn main ( ) {
let mut db = InMemoryReefDB :: new ( ) ;
let queries = vec ! [
"CREATE TABLE authors (id INTEGER PRIMARY KEY, name TEXT)" ,
"CREATE TABLE books (id INTEGER PRIMARY KEY, title TEXT, author_id INTEGER)" ,
"INSERT INTO authors VALUES (1, 'Alice')" ,
"INSERT INTO authors VALUES (2, 'Bob')" ,
"INSERT INTO books VALUES (1, 'Book 1', 1)" ,
"INSERT INTO books VALUES (2, 'Book 2', 2)" ,
"SELECT authors.name, books.title FROM authors INNER JOIN books ON authors.id = books.author_id" ,
] ;
for query in queries {
let result = db . query ( query ) ;
println ! ( "Result: {:?}" , result ) ;
}
}
هذا المشروع مرخص بموجب ترخيص MIT. راجع الترخيص لمزيد من المعلومات.