Swift中的iOS简单SQLite Select语句
我计划更新当前使用SQLITE数据库的旧应用程序 我的新应用程序是用iOS8/Swift编写的 有没有一种简单的方法可以在SQLite数据库文件上运行select语句并遍历结果?在这样做的同时,我将把信息传输到一个新的核心数据数据库中 例如:从myTable中选择id、someDate、someString、someInt 在我执行了这个select语句之后,我将永远不会对SQLite做任何其他事情,因此我不会考虑向应用程序添加任何主要内容。只是一个非常快速的选择,以获取种子数据 希望这是有意义的。我只是在尝试用Swift做这件事时感到困惑 ======更新====== 我要用SQLite.swift。易于安装和运行 以下操作正常,但我是否正确地检查了值是否为零?这是最好的检查方法吗Swift中的iOS简单SQLite Select语句,ios,sqlite,select,swift,Ios,Sqlite,Select,Swift,我计划更新当前使用SQLITE数据库的旧应用程序 我的新应用程序是用iOS8/Swift编写的 有没有一种简单的方法可以在SQLite数据库文件上运行select语句并遍历结果?在这样做的同时,我将把信息传输到一个新的核心数据数据库中 例如:从myTable中选择id、someDate、someString、someInt 在我执行了这个select语句之后,我将永远不会对SQLite做任何其他事情,因此我不会考虑向应用程序添加任何主要内容。只是一个非常快速的选择,以获取种子数据 希望这是有意义
let stmt = db.prepare("SELECT anID, aString FROM someTable")
for row in stmt {
if var myID:Int = row[0] as Int? { // do something here if exists }
if var myString:String = row[1] as String? { // do something here if exists }
}
FMDB
是一个了不起的第三方库,它与sqlite
接口
可以找到详细的
swift
FMDB
教程FMDB
是一个与sqlite
接口的令人惊叹的第三方库
详细的swift
FMDB
教程可以找到总是有的,但它肯定生活在客观的时代。我写信是为了更好地使用Swift编程语言
您上面的示例非常简单,如下所示:
let stmt = db.prepare("SELECT id, someDate, someString, someInt FROM myTable")
for row in stmt {
// [Optional(1), Optional("2014-10-30"), Optional("Hello!"), Optional(5)]
}
总是有,但它肯定生活在客观C时代。我写信是为了更好地使用Swift编程语言
您上面的示例非常简单,如下所示:
let stmt = db.prepare("SELECT id, someDate, someString, someInt FROM myTable")
for row in stmt {
// [Optional(1), Optional("2014-10-30"), Optional("Hello!"), Optional(5)]
}
效果很好。非常感谢。我已经更新了我的原始问题,以便进一步澄清检查值是否为零的最佳方法。默认情况下,无法保证在编译时列值永远不会为
NULL
,因此可选的方法是使用if
–let
是标准的。效果很好。非常感谢。我已经更新了我的原始问题,以便进一步澄清检查值是否为零的最佳方法。默认情况下,无法保证在编译时列值永远不会为NULL
,因此可选项是可行的,如果–let
是标准,则使用。只需声明一次类型就可以简化一点,我相信您打算使用let
来展开,例如。,如果让myID=row[0]作为Int?{/*…*/}
。(另外,第二行应该是行[1]
)谢谢,这很有意义。[2]是一个复制粘贴错误。更新。只需声明一次类型,您就可以简化一点,我相信您的意思是使用let
来展开,例如,如果让myID=row[0]作为Int?{/*…*/}
。(另外,第二行应该是行[1]
)谢谢,这很有意义。[2]是一个复制粘贴错误。更新。