ios - 向 iOS 中的 sqlite 数据库中插入一个可能为空的值

标签 ios swift sqlite swift2 fmdb

我有一个名为 Content 的类,其 URL 属性可为空(URL:字符串?)。 我想使用 FMDB 将此 URL 属性存储在我的 sqlite 数据库中,但 Xcode 提示我需要使用 !

但问题是当我执行 content.URL 时!它崩溃了,因为它是零。

 success = db.executeUpdate("INSERT INTO CONTENT(ID, Icon, Title, Description, URL, IsActive) VALUES(?,?,?,?,?,?,?,?,?)", withArgumentsInArray: [content.ID, content.icon, content.title, content.description, content.URL!, content.isActive])

如何在有值和没有值的情况下成功插入 URL?

谢谢!

最佳答案

我在这种情况下使用的一种方法是创建类扩展。

例如:

 class func databaseSafeObject(object: AnyObject?) -> AnyObject {
    if let safeObject: AnyObject = object{
        return safeObject;
    }

    return NSNull();
}

然后你就可以使用:

NSObject.databaseSafeObject(content.URL);

获取可以直接插入数据库的东西。

关于ios - 向 iOS 中的 sqlite 数据库中插入一个可能为空的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32414091/

相关文章:

iphone - Xcode 4.5 中@property 和ivar 的区别

ios - 以编程方式更改 three20 TTTableImageItem 的图像

ios - 如何在具有自动调整单元格的 UITableViewCell 中添加填充?

ios - 错误 : 'NSInternalInconsistencyException' , 原因: 'outputURL cannot be NULL'

java - ListView 中的 OnClickListener _id 与 SQLite 中的正确行 _id 不匹配

objective-c - 当设备没有互联网(数据)访问权限时控制台出错

swift - xcrun : error: unable to find utility "xctest", 不是开发人员工具或在 PATH 中

c# - 引用继承类型的 UWP EF SQLite 抛出异常

SQLite 从多行中选择数据作为一行返回

ios - UICollectionView 垂直填充问题