我正在尝试调试一些没有提供我期望的结果的sqlite.swift语句。
文档显示了注释中SQL的示例。
for user in try db.prepare(users.select(id, email)) {
print("id: \(user[id]), email: \(user[email])")
// id: 1, email: alice@mac.com
}
// SELECT "id", "email" FROM "users"
如何获取打印该SQL的语句?
print("\(users.select(id, email))")
没有给我SQL。我是否忽略了文档中的内容?
答案 0 :(得分:3)
如果要查看正在执行的SQL,请打印(query.asSQL())
let query = dbTable
.filter(dbSourceKey == Int64(minElement))
.filter(dbTargetKey == Int64(maxElement))
print(query.asSQL())//Will show SQL statement
答案 1 :(得分:1)
以下命令将打印所有SQL语句:
db.trace(print)
请参阅https://github.com/stephencelis/SQLite.swift/blob/master/Documentation/Index.md#logging