iOS Xcode样本项目
这些事示例测试项目,因此项目名称必须经过litesync-test才能正常工作。
完整库中没有此限制。
SQLite.swift包装器
有两个使用 SQLite.swift包装器的示例项目
第一个具有使用SQL的简单接口
try db.execute("CREATE TABLE IF NOT EXISTS Tasks (id INTEGER PRIMARY KEY, name TEXT, done INTEGER)") try db.run("INSERT INTO Tasks (name, done) VALUES (?,?)", name, Int(done!)) for row in try db.prepare("SELECT * FROM Tasks") { let id = row[0] as! Int64 let name = row[1] as! String let done = Int(row[2] as! Int64) print("id: \(id) name: \(name) done: \(done)") }
第二个使用对象:
let tasks = Table("tasks")
let id = Expression
本机SQLite接口
该示例项目使用本机SQLite接口
let queryString = "SELECT * FROM Tasks" var stmt:OpaquePointer? if sqlite3_prepare(db, queryString, -1, &stmt, nil) != SQLITE_OK{ let errmsg = String(cString: sqlite3_errmsg(db)!) print("error preparing statement: \(errmsg)") return } while(sqlite3_step(stmt) == SQLITE_ROW){ let id = sqlite3_column_int(stmt, 0) let name = String(cString: sqlite3_column_text(stmt, 1)!) let done = sqlite3_column_int(stmt, 2) print("id: \(id) name: \(name) done: \(done)") } sqlite3_finalize(stmt)
Instructions
两个项目都要:
1 在计算机上安装修改后的SQLite Shell和依赖项
2 启动一个SQLite Shell作为绑定到TCP地址的主节点
3 修改TCP地址以连接到项目代码
4 在模拟器或设备上构建并运行项目
要在主节点上打开数据库,我们使用如下命令:
sqlite3 "file:test.db?node=primary&bind=tcp://0.0.0.0:1234"