Сбой при подготовке: неверный параметр или другое неправильное использование API в SQLite Swift при вставке данных.IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Сбой при подготовке: неверный параметр или другое неправильное использование API в SQLite Swift при вставке данных.

Сообщение Anonymous »

Код: Выделить всё

let db = Database.openDatabase()

let insertStatementString = "INSERT INTO SignupDetails VALUES (\((self.txtUsername.text!.trimmingCharacters(in: .whitespaces))), \((self.txtPassword.text!.trimmingCharacters(in: .whitespaces))))"

Database.insertIntoSignupDetails(db: db, insertStatementString: insertStatementString)

sqlite3_close(db)
Приведенный выше код содержит мой запрос на вставку данных в базу данных с помощью SQLite.

Я создал таблицу как показано ниже:-

Код: Выделить всё

let db = Database.openDatabase()
let createTableString =
"""
CREATE TABLE IF NOT EXISTS SignupDetails(
username CHAR(255),
password CHAR(255));
"""

Database.createTable(db: (db != nil) ? db : OpaquePointer(UserDefaults.standard.object(forKey: Constant.db) as! String), createTableString: createTableString)

sqlite3_close(db)
и я также успешно выполнил следующий код для создания таблицы: -

Код: Выделить всё

static func createTable(db: OpaquePointer?, createTableString: String) {
var createTableStatement: OpaquePointer? = nil

if sqlite3_prepare_v2(db, createTableString, -1, &createTableStatement, nil) == SQLITE_OK {
if sqlite3_step(createTableStatement) == SQLITE_DONE {
print("table created.")
} else {
print("table could not be created.")
}
} else {
print("CREATE TABLE statement could not be prepared.")
}

sqlite3_finalize(createTableStatement)
}
Но моя проблема в том, что когда я пытаюсь вставить данные в существующую таблицу

получаю ошибку, показанную ниже: -

Код:-

Код: Выделить всё

    var insertStatement: OpaquePointer?

guard sqlite3_prepare_v2(db, insertStatementString, -1, &insertStatement, nil) == SQLITE_OK else {
let errmsg = String(cString: sqlite3_errmsg(db))
print("failure preparing: \(errmsg)")
return
}

if sqlite3_step(insertStatement) == SQLITE_OK {
print("Successfully inserted row.")
} else {
print("Could not insert row.")
}

sqlite3_finalize(insertStatement)
Ошибка:

сбой подготовки: неверный параметр или другое неправильное использование API

Подробнее здесь: https://stackoverflow.com/questions/541 ... hile-inser
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»