@prosto_anton

Почему не выполняется запрос UPDATE (QT SQLITE)?

Работаю с sqlite из qt. Запросы на добавление и выборку срабатывают отлично, на обновление и удаление не работают, веренее функция exec() возвращает true, но результата запроса я в базе не наблюдаю.
QString query = "UPDATE `mic` SET name='?', micType='?', accuracy='?', "
                        "perform='?', power='?', price='?', bodyType='?', ifType='?', "
                        "outType='?', bit='?', vendor='?', integType='?', fD='?', "
                        "channelCount='?', modul='?', cascadeCount='?', "
                        "quantizerLevel='?', filter='?', year='?', about='?' "
                        "WHERE id='?'";
// код
this->query.prepare(query);
// код
this->query.addBindValue(item->text());

Возможно, проблема в кавычках, обрамляющих параметры ('?'), но без них " Parameter count mismatch". В запросе на добавление -- обратная ситуация.
Посоветуйте что-нибудь, а то лыжи не едут. Заранее спасибо.
  • Вопрос задан
  • 3090 просмотров
Пригласить эксперта
Ответы на вопрос 1
IGHOR
@IGHOR Куратор тега Qt
Qt/C++ DEV/CTO
Кавычки не нужны "perform='?'"
Следует использовать "perform=?" (поскольку addBindValue добавит еще одни кавычки для текстов, а они не нужны).
Подсчитайте количество знаков ? и query.addBindValue
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы