The package provides an interface to SQLite.
```rust let connection = sqlite::open(":memory:").unwrap();
connection.execute(" CREATE TABLE users (id INTEGER, name VARCHAR(255)); INSERT INTO users (id, name) VALUES (42, 'Alice'); ").unwrap();
connection.process("SELECT * FROM users", |pairs| { for &(column, value) in pairs.iter() { println!("{} = {}", column, value.unwrap()); } true }).unwrap(); ```
The same example using prepared statements:
```rust use sqlite::State;
let connection = sqlite::open(":memory:").unwrap();
connection.execute(" CREATE TABLE users (id INTEGER, name VARCHAR(255)) ");
let mut statement = connection.prepare(" INSERT INTO users (id, name) VALUES (?, ?) ").unwrap(); statement.bind(1, 42).unwrap(); statement.bind(2, "Alice").unwrap(); assert_eq!(statement.step().unwrap(), State::Done);
let mut statement = connection.prepare("SELECT * FROM users").unwrap();
while let State::Row = statement.step().unwrap() {
println!("id = {}", statement.read::