Cho*_*gzl 17 sqlite xcode swift
我正在使用xcode 6,我已导入libsqlite3.dylib和libsqlite3.0.dylib.我还添加了Bridging-Header.h文件女巫导入sqlite3.h
我可以打开SQLite数据库并执行简单的操作,如插入选择...
同
if (sqlite3_bind_text(compiledStatement, 2, Name.cStringUsingEncoding(NSUTF8StringEncoding), -1, SQLITE_TRANSIENT) != SQLITE_OK)
我有一个错误: Use of unresolved identifier 'SQLITE_TRANSIENT'
我做什么节目?我是斯威夫特的新手,这是我在Stack上的第一个问题,请有人帮助我!
Mar*_*n R 30
定义
#define SQLITE_STATIC ((sqlite3_destructor_type)0)
#define SQLITE_TRANSIENT ((sqlite3_destructor_type)-1)
Run Code Online (Sandbox Code Playgroud)
from <sqlite3.h>不会导入到Swift,可能是因为"不安全"的指针转换.
可能的Swift定义显示在Statement.swift的 SQLite.swift项目中 :
let SQLITE_STATIC = sqlite3_destructor_type(COpaquePointer(bitPattern: 0))
let SQLITE_TRANSIENT = sqlite3_destructor_type(COpaquePointer(bitPattern: -1))
Run Code Online (Sandbox Code Playgroud)
对于Swift 2,您需要
let SQLITE_STATIC = unsafeBitCast(0, sqlite3_destructor_type.self)
let SQLITE_TRANSIENT = unsafeBitCast(-1, sqlite3_destructor_type.self)
Run Code Online (Sandbox Code Playgroud)
(摘自SQLite.swift项目的Swift 2分支中的"Helpers.swift").
Swift 3更新:
let SQLITE_STATIC = unsafeBitCast(0, to: sqlite3_destructor_type.self)
let SQLITE_TRANSIENT = unsafeBitCast(-1, to: sqlite3_destructor_type.self)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2802 次 |
| 最近记录: |