Ошибки преобразования из Swift 3.0 в Swift 4.2 в нерегонизированном токене SQLitt.Swift

Мой текущий код написан на Swift 3, я пытался изменить Swift 4.2 через Xcode10.1. SQLite дает сбой при изменении версии и работает правильно со старым кодом.

Я пытаюсь получить количество записей в таблице с помощью SQLite.swift и Swift в приложении MacOS какао.

let db = try Connection("\(pathh)/db.sqlite3")
let users = Table("users")
var count = try db.scalar(users.filter(userid == userid).count) 

Однако при выполнении этого кода возникает следующее исключение:

unrecognized token: ":" (code: 1)

Когда я пытался использовать var count = try db.scalar("SELECT COUNT(*) FROM users WHERE userid=?",userid) as! Int64, возвращается правильный результат. Но эта ошибка возврата обычного возраста

no such table tablename (code:1)

для некоторой таблицы.

Любая помощь будет оценена. Заранее спасибо!

1 ответ

В моем проекте мне требовалось обновить следующее в моем подфиле:

pod 'SQLCipher', '~>4.2.0'
pod 'SQLite.swift/SQLChiper', '~>0.12.0'

После обновления модуля нераспознанный токен: ":" (код: 1) решен.

Другие вопросы по тегам