Privacy policyContactsAbout siteOpinionsGitHubDonate
© EVILEG 2015-2018
Recommend hosting
TIMEWEB
Jan. 2, 2019, 10:07 a.m.

Как получить данные из QSqlQuery при запросе SELECT

qt, SELECT, QSqlQuery

Здравствуйте. Делаю запрос в базу данных:

    QSqlQuery query;
    query.prepare("SELECT "
                  "\"NumberID\" ,"
                  "\"Name\" ,"
                  "\"Comments\" ,"
                  "\"Resume\""
              " FROM " + NameTableDB +
             " WHERE \"NumberID\" = 52" 
              ";");

    if (!query.exec()) {qDebug()<<"не получило данные";}
    else
    {
        qDebug()<<"получило данные";
        int IdResume = query.value(0).toInt();
        QString NameResume = query.value(1).toString();
        QString ComentResume = query.value(2).toString();
        QString Resume = query.value(3).toString();
        qDebug()<<"Id"<<IdResume;
        qDebug()<<"Name"<<NameResume;
        qDebug()<<"coment"<<ComentResume;
        qDebug()<<"resume"<<Resume;
    }

дебаг выдает: получило данные QSqlQuery::value: not positioned on a valid record QSqlQuery::value: not positioned on a valid record QSqlQuery::value: not positioned on a valid record QSqlQuery::value: not positioned on a valid record Id 0 Name "" coment "" resume "" Скажите пожалуйста, как мне получить эти данные?

10% refund of hotel reservation amount on Booking
10% refund of hotel reservation amount on Booking
We offer a link with a 10% return on the amount of the order when booking a hotel through Booking
4

так работает

        query.first();
        QString NameResume = query.value(0).toString();
        QString ComentResume = query.value(1).toString();
        QString Resume = query.value(2).toString();
        qDebug()<<"Name"<<NameResume;
        qDebug()<<"coment"<<ComentResume;
        qDebug()<<"resume"<<Resume;
0
query.next();

Первым оператором в else добавьте.

0
R

просто потрібно викликати query.next() короткий приклад з коду

        n_query = QString("SELECT item_type, "
                          " FROM category WHERE item_id = %1")
                .arg(json["ic"].toInt()));

    }

    if (!m_query.exec(n_query))
    {
        qDebug() << Q_FUNC_INFO << n_query;
        qDebug() << m_query.lastError();
    }


    QSqlRecord rec = m_query.record();
    while (m_query.next()) {
        QJsonObject arr;
        arr.insert("it_type", QJsonValue(m_query.value(rec.indexOf("item_type")).toBool()));
        }
0

Извините что побеспокоил. Как уже говорил query.first(); все поправило. Спасибо всем за участие.

0

Comments

Only authorized users can post comments.
Please, Log in or Sign up
Last comments
March 19, 2019, 12:57 p.m.
AlexanderBardin

Добрый день. А проверить работоспособность локально как-то можно не указывая реальнй сайт (еще в разработке)
March 16, 2019, 1:55 p.m.
Дмитрий

Спасибо за статью. Давно итересует следующий вопрос: с помощью переменных QMAKE_TARGET_COMPANYQMAKE_TARGET_PRODUCTQMAKE_TARGET_DESCRIPTIONможно задать свойства компилируемой программы, о...
JS
March 12, 2019, 10:19 a.m.
Jean Stefanovich

Большое спасибо за разъяснения!
March 12, 2019, 10:04 a.m.
Евгений Легоцкой

Hello, In fact, this functionality or is not implemented, or is not documented. I'm not sure. But I think, that it should be implemented in Text QML Type. Because of we can write text in...
March 12, 2019, 9:51 a.m.
Евгений Легоцкой

Да вы правы. На самом деле проще через QSqlQueryModel, сколько не пытался использовать эти дженерики типо QSqlTableModel и QSqlRelationalTableModel, то всегда упирался в какие-то их ограничени...
Now discuss on the forum
March 19, 2019, 1:43 p.m.
AlexanderBardin

Очень интересная тема. У вас случайно нет статьи с полным циклом интреграции нескольких языков?Так сказать с нуля, что нужно, какие пакеты ставить, что куда писать. Тут вроде информации не ма...
March 17, 2019, 10:47 p.m.
Евгений Легоцкой

Добрый день. Вот, нашлось у меня немного времени. Делается это через шаблон проектирования наблюдатель. GraphKS_mfvSlup.zip
ЧГ
March 15, 2019, 9:52 p.m.
Чарльз Грин

спасибо, попробую, отпишусь
m
March 15, 2019, 7:41 p.m.
mihamuz

Сори догадался)
n
March 12, 2019, 4:57 p.m.
newbie.works.with.QT

Большооооое спасибо!!!!!Не передать как я вам благодарен, спасибо что всегда отзываетесь.Теперь я смогу продолжить работу в QT!!! (пробую писать бота (Я как вы могли догадаться немного не пр...
Join us in social networks

For registered users on the site there is a minimum amount of advertising