Swift GRDB 4.14.0 调试配置: 如何打印 SQL 语句
要在 Swift GRDB 4.14.0 中打印 SQL 语句的调试信息,可以使用 GRDB 的 "DatabaseLogger" 功能。下面是配置的步骤:\n\n1. 首先,导入 GRDB 和 GRDBLogging 模块:\nswift\nimport GRDB\nimport GRDBLogging\n\n\n2. 在应用程序启动时,配置 GRDB 的日志记录。可以在 "didFinishLaunchingWithOptions" 方法中添加以下代码:\nswift\nfunc application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {\n // 设置 GRDB 日志记录\n GRDBInterface.setup()\n \n // ...\n \n return true\n}\n\n\n3. 在应用程序的根目录下,创建一个名为 "GRDBInterface.swift" 的文件,并在其中添加以下内容:\nswift\nimport GRDB\nimport GRDBLogging\n\nclass GRDBInterface {\n static func setup() {\n // 创建日志记录器\n let logger = DatabaseLogger()\n \n // 设置日志记录级别\n logger.level = .info\n \n // 配置 GRDB\n var config = Configuration()\n config.prepareDatabase { db in\n // 为数据库添加日志记录器\n db.add(logger: logger)\n }\n \n // 打开数据库\n try! DatabaseQueue(path: \"/path/to/database.sqlite\", configuration: config)\n }\n}\n\n\n请确保将 "/path/to/database.sqlite" 替换为您实际的数据库路径。\n\n4. 现在,当您使用 GRDB 执行 SQL 查询时,日志记录器将打印 SQL 语句和相关的调试信息。例如:\nswift\ntry dbQueue.write { db in\n try db.execute(sql: \"INSERT INTO persons (name) VALUES (?)\", arguments: [\"John\"]}\n}\n\n\n这将在调试控制台打印出类似以下内容的日志记录:\n\n[info] [SQL] INSERT INTO persons (name) VALUES ('John')\n[info] [SQL] COMMIT\n\n\n这样,您就可以在 Swift GRDB 4.14.0 中配置并打印 SQL 语句的调试信息了。
原文地址: https://www.cveoy.top/t/topic/pnw3 著作权归作者所有。请勿转载和采集!