2015-05-13 93 views
2

如何插入NULL與迅速插入NULL與SWIFT + FMDB

let myNullableValue: Double? = nil 
fmdb.executeUpdate(
    "INSERT INTO myTable(myNullableColumn) SELECT :myNullableValue" 
    , withParameterDictionary: [ "myNullableValue": myNullableValue ]) 

回答

3

從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() ]