Как правильно вставить данные BLOB в таблицу - PullRequest
0 голосов
/ 19 апреля 2019

Я пытаюсь записать массив данных в таблицу, но получаю ошибку "Несоответствие параметров"

auto query = new QSqlQuery(db);


request = QString("INSERT INTO items(id, type, data) VALUES"
                          "('%0', '%1', :bytes)").
                            arg(id).
                            arg(static_cast<int>(type));

// request: INSERT INTO items(id, type, data) VALUES('0', '512', :bytes)
query->prepare(request)); // ok
query->bindValue(":bytes", bytes); // bytes is qbytearray with data
query->exec(request) // error  Parameter count mismatch
  • ОС: Ubuntu 18.04
  • Qt: 5.12.3, 5.9.7

    Как правильно записать данные?

1 Ответ

0 голосов
/ 19 апреля 2019

Ошибка состояла в том, что я передал свой исходный запрос параметрам функции, он заменил тот, на котором выполнялась функция "bindValue".

Нужно заменить

query->exec(request);

от

query->exec();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...