如果之前询问过这个问题(无法找到确切的解决方案),我很抱歉,但我的数据库表上有一个类型为varchar并且可以为空的列。
当我查询以取回列时:
let rs: FMResultSet = db.executeQuery("SELECT InternalNote from MyTable where id = ?", withArgumentsIn: [id])
while(rs.next())
{
let testValue = rs.string(forColumn: "InternalNote")
..code continues..
}
..
它导致上面的rs.string崩溃,因为该字段为空..
我认为我必须将其更改为非null并且默认为“”,但有没有办法让它保持为空?
谢谢!
答案 0 :(得分:1)
如果您将代码更改为:
,该怎么办?if let value = rs.string(forColumn: "internalNote") {
let testValue = value
... code continues ...
}
答案 1 :(得分:0)
检查问题不是由于您的rs.string(forColumn:)
来电internalNote
时查询已{{1}}。