Swift是一种新型的编程语言,由苹果公司开发,旨在替代Objective-C。它是一种类型安全的、通用的编程语言,支持过程式和面向对象编程。Swift具有简单易学、高效安全、跨……
Swift是一种新型的编程语言,由苹果公司开发,旨在替代Objective-C。它是一种类型安全的、通用的编程语言,支持过程式和面向对象编程。Swift具有简单易学、高效安全、跨平台等特点,受到广大开发者的欢迎。
import Foundation
import SQLite3
// 创建数据库连接
var db: OpaquePointer? = nil
let path = Bundle.main.path(forResource: "test", ofType: "sqlite")!
if sqlite3_open(path, &db) != SQLITE_OK {
print("无法打开数据库")
}
// 创建表
let createTableSQL = "CREATE TABLE IF NOT EXISTS user (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INT)"
if sqlite3_exec(db, createTableSQL, nil, nil, nil) != SQLITE_OK {
print("创建表失败")
}
// 插入数据
let insertSQL = "INSERT INTO user (name, age) VALUES (?, ?)"
let statement = sqlite3_prepare_v2(db, insertSQL, -1, &OpaquePointer(OpaquePointer.null()), nil, nil)
if sqlite3_step(statement) != SQLITE_DONE {
print("插入数据失败")
}
sqlite3_finalize(statement, nil)
// 查询数据
let querySQL = "SELECT * FROM user WHERE age > ?"
let statement2 = sqlite3_prepare_v2(db, querySQL, -1, &OpaquePointer(OpaquePointer.null()), nil, nil)
if sqlite3_bind_int(statement2, 1, 20) != SQLITE_OK {
print("绑定参数失败")
}
while sqlite3_step(statement2) == SQLITE_ROW {
let name = String(cString: sqlite3_column_text(statement2, 1))
let age = sqlite3_column_int(statement2, 2)
print("name:(name), age:(age)")
}
sqlite3_finalize(statement2, nil)
// 关闭数据库连接
sqlite3_close(db)
上述代码中,我们首先创建了数据库连接,并创建了一个名为"user"的表。然后,我们向表中插入了一条数据,并使用SELECT语句查询了年龄大于20岁的用户信息。最后,我们关闭了数据库连接。
还没有评论呢,快来抢沙发~