SQLite.swift swift 2 - 在连接表中选择带有* from的表的所有列

时间:2015-11-02 15:04:24

标签: swift2 sqlite.swift

我试图在选择函数的帮助下从连接的SQLite.swift表语句中选择表中的所有列,但是我总是收到以下错误:

Cannot invoke 'select' with an argument list of type '(Expression<Void>)'

以下是产生错误的演示代码:

let messageId = Expression<String>("id")
let messageContent = Expression<String>("content")
let messageGroupId = Expression<String>("group_id")

let groupId = Expression<String>("id")
let groupName = Expression<String>("name")

if let db = try? Connection()
{
    let messageTable = Table("message")
    let groupTable = Table("group")


    try! db.run(messageTable.create() { t in
        t.column(messageId, primaryKey: true)
        t.column(messageContent)
        t.column(messageGroupId)
    })

    try! db.run(groupTable.create() { t in
        t.column(groupId, primaryKey: true)
        t.column(groupName)
    })


    let query = messageTable
        .join(groupTable, on: messageTable[messageGroupId] == groupTable[groupId])
        .filter(messageTable[messageGroupId] == "SOME GROUP ID")
        .select(messageTable[*])    // THIS SELECT IS CAUSING AN ERROR - WHAT IS WRONG?
}

当我尝试使用 STAR(表格的所有字段)时,选择功能的最后一次调用总是会导致错误。有什么方法可以使用星号运算符而不是单独列出所有字段吗?

我正在使用Xcode 7.0.1,也许这在7.1中用swift 2.1修复了?

0 个答案:

没有答案
相关问题