初学者 FMDB iOS 数据库、表创建
Posted
技术标签:
【中文标题】初学者 FMDB iOS 数据库、表创建【英文标题】:Beginner FMDB iOS Database, Table Creation 【发布时间】:2016-10-26 07:38:26 【问题描述】:您将如何在 ios 应用程序中创建数据库文件?我在 Xcode (Swift) 中使用 FMDB,并且在这里创建了执行查询的函数:
func query()
let DB = FMDatabase(path: dbFilePath as String)
if DB.open()
let querySQL = "SELECT * FROM SHOPS"
let results:FMResultSet? = DB.executeQuery(querySQL, withArgumentsInArray: nil)
print(querySQL)
DB.close()
print(results)
else
print("Error: \(DB.lastErrorMessage())")
我的创建数据库功能需要帮助,如 FMDB 文档中所述:创建一个 FMDatabase 时带有一个 SQLite 数据库文件的路径。此路径可以是以下三种之一: 文件系统路径。该文件不必存在于磁盘上。如果它不存在,它会为你创建。但是我在哪里可以获得数据库文件的文件路径?
我还有一个关于如何继续创建表功能的问题:
func create()
let createString = "CREATE TABLE Shops(id INT PRIMARY KEY NOT NULL, name char(255);)"
我是否使用 executeUpdate?如果对您来说不太耗时,请提供简洁明了的答案,因为我是初学者。提前致谢。
【问题讨论】:
【参考方案1】:Xcode 8.0 Swift 3.0 版本
在您的 Appdelegate.swift 中复制以下代码
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool
// Override point for customization after application launch.
Util.copyFile("<yourDatabaseName>.sqlite")
getDocDir()
return true
func getDocDir() -> String
print(NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0])
return NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]
然后运行Xcode:快捷键:build (Cmd + B) -> Run(Cmd + R)
检查 Xcode 的控制台获取如下示例的路径:
示例图片:https://i.stack.imgur.com/xH0AV.png
复制路径:
/users//tooti/Library/Developer/CoreSimulator/Devices/..../data/Containers/Data/Application/.../Documents/
-> 打开 Finder-> 转到 -> 转到文件夹并粘贴从上面复制的路径
示例图片:https://i.stack.imgur.com/DmzH8.png
-> 然后单击 Enter。就这样完成了。你会发现一个 .sqlite 文件
您还可以使用 SQLite 管理器/Firefox 浏览器/DBManagerExtension 工具打开数据库文件。【讨论】:
以上是关于初学者 FMDB iOS 数据库、表创建的主要内容,如果未能解决你的问题,请参考以下文章