SQLite.swift已有数据库表新增列出错?

使用SQLite.swift对已有数据库表使用try db.run(table.addColumn(title))新增title列时报错。

代码如下:

//创建表

private func creatTable(filePath: String) {
    do {
        db = try Connection(filePath)
        
        try db.run(table.create(ifNotExists: true){ t in
            t.column(statusId, primaryKey: true)  //主键
            t.column(statusText)
            t.column(userId, unique: true)  //非空
            t.column(createTime)
        })
        
        try db.run(table.addColumn(title))

        print("创建表成功")
    } catch {
        print("建表失败: \(error)")
    }
}

错误日志:
建表失败: duplicate column name: title (code: 1)

通过查看沙盒下的数据库,title列已经添加进去了,刚添加的的数据title列也是有值的

图片描述

应该是我对addColumn的用法不对,还请大神指点。

阅读 2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进