使用swift + FMDB插入NULL

时间:2015-05-13 04:57:07

标签: sqlite swift null fmdb

如何使用swift

将NULL插入列中
let myNullableValue: Double? = nil
fmdb.executeUpdate(
  "INSERT INTO myTable(myNullableColumn) SELECT :myNullableValue"
  , withParameterDictionary: [ "myNullableValue": myNullableValue ])

1 个答案:

答案 0 :(得分:4)

来自FMDB的源代码 https://github.com/ccgus/fmdb/blob/master/src/fmdb/FMDatabase.m

- (void)bindObject:(id)obj toColumn:(int)idx inStatement:(sqlite3_stmt*)pStmt {

    if ((!obj) || ((NSNull *)obj == [NSNull null])) {
        sqlite3_bind_null(pStmt, idx);
    }
    // ...

可以得出结论,NSNull值作为SQLite NULL插入, 即参数字典应为

[ "myNullableValue": NSNull() ]