QSqlQuery не выбирает запись из postgresql

соответствующий код:

this->user = ui->user->text();
this->pass = ui->pass->text();

QSqlQuery qry;
qry.prepare("select pass from users WHERE user =:user");
qry.bindValue(":user",this->user);

if(qry.exec()){
qDebug () << "query.exe success";
}
qDebug() << " ERROR " << qry.lastError();

if(qry.first()){
qDebug() <<  qry.value(0).toString();

}

qry.first() никогда не выполняется qry.lastError() возвращает пустую строку ошибки, что, как я понимаю, означает, что ошибки нет. Однако, используя delete from users работает. this->user строка, которая соответствует тому, что находится в таблице базы данных users, Но запрос никогда не выполняется.

Таблица users' столбцы: id, user (varchar), pass(varchar)
Я искал ответ во многих местах, но не нашел его.

0

Решение

Убедитесь, что запрос работает без привязки в первую очередь.

Ваш водитель может не поддерживать названный связывание!

Попробуйте связать значения, используя позиционный заполнители:

qry.prepare("select pass from users WHERE user = ?");
qry.bindValue(0,this->user);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]