Merge pull request #417 from vladh/patch-1

Update README example.
This commit is contained in:
gwenn 2018-10-24 18:09:07 +02:00 committed by GitHub
commit 03561e36fb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -13,45 +13,52 @@ an interface similar to [rust-postgres](https://github.com/sfackler/rust-postgre
extern crate rusqlite;
extern crate time;
use rusqlite::types::ToSql;
use rusqlite::{Connection, NO_PARAMS};
use time::Timespec;
use rusqlite::Connection;
#[derive(Debug)]
struct Person {
id: i32,
name: String,
time_created: Timespec,
data: Option<Vec<u8>>
data: Option<Vec<u8>>,
}
fn main() {
let conn = Connection::open_in_memory().unwrap();
conn.execute("CREATE TABLE person (
conn.execute(
"CREATE TABLE person (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
time_created TEXT NOT NULL,
data BLOB
)", &[]).unwrap();
)",
NO_PARAMS,
).unwrap();
let me = Person {
id: 0,
name: "Steven".to_string(),
time_created: time::get_time(),
data: None
data: None,
};
conn.execute("INSERT INTO person (name, time_created, data)
conn.execute(
"INSERT INTO person (name, time_created, data)
VALUES (?1, ?2, ?3)",
&[&me.name, &me.time_created, &me.data]).unwrap();
&[&me.name as &ToSql, &me.time_created, &me.data],
).unwrap();
let mut stmt = conn.prepare("SELECT id, name, time_created, data FROM person").unwrap();
let person_iter = stmt.query_map(&[], |row| {
Person {
let mut stmt = conn
.prepare("SELECT id, name, time_created, data FROM person")
.unwrap();
let person_iter = stmt
.query_map(NO_PARAMS, |row| Person {
id: row.get(0),
name: row.get(1),
time_created: row.get(2),
data: row.get(3)
}
}).unwrap();
data: row.get(3),
}).unwrap();
for person in person_iter {
println!("Found person {:?}", person.unwrap());