В последнее время я использую SQLite.swift для создания моей базы данных приложений.
И я определяю все мои столбцы INTEGER
с типом Int64
, как объясняет документация.
Но время от времени мне нужно, чтобы Int64
был просто Int
.
Поэтому мой вопрос: если я это сделаю:
//Create a table with Int instead of Int64
let test_id = Expression<Int>("test_id")
let tests = db["tests"]
db.create(table: tests, ifNotExists: true){ t in
t.column(test_id)
}
class func insertTest(t: Int) -> Int{
//insert.rowid returns an Int64 type
let insert = tests.insert(test_id <- t)
if let rowid = insert.rowid{
//directly cast Int64 into Int
return Int(rowid)
}
return 0
}
Будет ли это правильно?
Конечно, я его протестировал. И он работает, но я читал qaru.site/info/357450/...
И похоже, что у меня может быть проблема с 32-битными устройствами...
Если это не так, как я могу сделать Int64
в Int
?