SQLite.swift -


MIT
iOS
Swift

软件简介

SQLite.swift 是一个使用纯 Swift 语言封装 SQLite3 的操作框架。

特性:

  • 简单的查询和参数绑定接口

  • 安全、自动类型数据访问

  • 隐式提交和回滚接口

  • 开发者友好的错误处理和调试

  • 文档完善

  • 通过广泛测试

示例代码:

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 // 2
db.lastChanges  // {Some 1}
db.lastID       // {Some 2}

for row in db.prepare("SELECT id, email FROM users") {
    println(row)
    // [Optional(1), Optional("betsy@example.com")]
    // [Optional(2), Optional("alice@example.com")]
}

db.scalar("SELECT count(*) FROM users") // {Some 2}

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)
)