import SQLite
let db = Database(
"path/to/db.sqlite3"
)
db.execute(
"CREATE TABLE users ("
+
"id INTEGER PRIMARY KEY, "
+
"email TEXT NOT NULL UNIQUE, "
+
"manager_id INTEGER, "
+
"FOREIGN KEY(manager_id) REFERENCES users(id)"
+
")"
)
let stmt = db.prepare(
"INSERT INTO users (email) VALUES (?)"
)
for
email in [
"alice@example.com"
,
"betsy@example.com"
] {
stmt.run(email)
}
db.totalChanges
db.lastChanges
db.lastID
for
row in db.prepare(
"SELECT id, email FROM users"
) {
println(row)
}
db.scalar(
"SELECT count(*) FROM users"
)
let jr = db.prepare(
"INSERT INTO users (email, manager_id) VALUES (? ?)"
)
db.transaction(
stmt.run(
"dolly@example.com"
),
jr.run(
"emery@example.com"
, db.lastID)
)