Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Bzzzuka от Апрель 21, 2012, 14:53



Название: addBindValue
Отправлено: Bzzzuka от Апрель 21, 2012, 14:53
 почему при запуске

    query.prepare("SELECT "+opt->CutList+" FROM moon WHERE name = ?");
    query.addBindValue(QVariant(ui->lineEdit->text()));
    query.exec();
    qDebug() << query.executedQuery();

в консоль выводиться

   "SELECT lon,ej_bl_max_d2,first_mention FROM moon WHERE name = ?"

почему вместо вопроса не подставляется значение QVariant(ui->lineEdit->text()), хотя всегда получалось?


Название: Re: addBindValue
Отправлено: V1KT0P от Апрель 22, 2012, 16:40
почему при запуске

    query.prepare("SELECT "+opt->CutList+" FROM moon WHERE name = ?");
    query.addBindValue(QVariant(ui->lineEdit->text()));
    query.exec();
    qDebug() << query.executedQuery();

в консоль выводиться

   "SELECT lon,ej_bl_max_d2,first_mention FROM moon WHERE name = ?"

почему вместо вопроса не подставляется значение QVariant(ui->lineEdit->text()), хотя всегда получалось?
Вообще-то все работает и выводится так и должно. Это специально сделано, для того чтоб после выполнения запроса можно было забиндить новые значения без вызова подготовки запроса и выполнить. То-есть так сделали в целях оптимизации.