【问题标题】:DatabaseConnecton issue in GRDB swiftGRDB swift中的DatabaseConnecton问题
【发布时间】:2017-11-13 23:06:09
【问题描述】:

我想在我的 iOS 应用程序中使用 SQLite 数据库,并且有不同的框架可用。所以我目前的重点是GRDB,我已经成功地创建、插入了值,并通过 SQL 命令接收了返回,如here 所示。

但是,一旦应用程序关闭,我将如何访问相同的 DataBaseQueue 以及我的数据库的恒定路径应该是什么?

import GRDB

// Open a simple database connection

if let dbQueue = try DatabaseQueue(path: "what should be the correct path ")!= nil{
    setupDatabase()
}
else
{
    dbQueue = DatabaseQueue()
}

【问题讨论】:

    标签: ios swift grdb


    【解决方案1】:

    GRDB FAQ 回答您的问题:

    如何在我的应用程序中创建数据库?

    数据库必须存储在可以创建和修改的有效位置。比如在Application Support directory

    let databaseURL = try FileManager.default
        .url(for: .applicationSupportDirectory, in: .userDomainMask, appropriateFor: nil, create: true)
        .appendingPathComponent("db.sqlite")
    let dbQueue = try DatabaseQueue(path: databaseURL.path)
    

    【讨论】:

    • 好的,所以我不知道 let dbQueue = try DatabaseQueue(path: databaseURL.path) 不仅用于检索数据库,而且在没有可用时也会创建一个。谢谢先生的澄清
    • 是的,这是真的。 DatabaseQueue(path:...) 如果数据库尚不存在,则创建并打开它。
    • 它实际上是一个 SQLite 特性,而不是一个 GRDB 特性!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-16
    • 2021-12-04
    • 2015-12-25
    • 2021-04-15
    • 2015-07-07
    • 2015-09-13
    • 1970-01-01
    相关资源
    最近更新 更多