当前位置: 首页>>代码示例>>C++>>正文


C++ QSqlQuery::isNull方法代码示例

本文整理汇总了C++中QSqlQuery::isNull方法的典型用法代码示例。如果您正苦于以下问题:C++ QSqlQuery::isNull方法的具体用法?C++ QSqlQuery::isNull怎么用?C++ QSqlQuery::isNull使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在QSqlQuery的用法示例。


在下文中一共展示了QSqlQuery::isNull方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: ddmGetQuestions

// Find questions
int ddmGetQuestions(QList<CQuestion*> &quesList, int paperId)
{
	QSqlQuery q;

    QString sql(QObject::tr("SELECT id, title, optionA, optionB, optionC, optionD, answer, type "
                            "From questions WHERE paperId = %1").arg(paperId));
    qDebug() << sql;
    if (!q.exec(sql)) {
        qDebug() << db.lastError();
        return -1;
    }

	while (q.next())
	{
        int type = q.value(7).toInt();

        CQuestion *ques = CQuesManager::get_ques((QUES_TYPE)type);
        ques->id = q.value(0).toInt();
        ques->title = q.value(1).toString();
        ques->type = (QUES_TYPE)type;
		for (int i = 0; i < 4; ++i)
		{
			if (q.isNull(2 + i))
				continue;
            ques->options.append(q.value(2 + i).toString());
		}
        ques->proper_ans = q.isNull(6) ? "" : q.value(6).toString();
		quesList.append(ques);
	}

	return 0;
}
开发者ID:yangk,项目名称:smarthome,代码行数:33,代码来源:ddm.cpp

示例2: getPixmapFromTable

/*
 * Get the image in sensor table
 * @id: the primary key of sensor table
 */
QPixmap MainWindow::getPixmapFromTable(QString id)
{
    QString sql="select jpg from sensor where id=";
    sql+=id;
    ui->textEdit->append(sql);

    QSqlQuery query;
    query.prepare(sql);
    if(!query.exec())
        ui->textEdit->append(query.lastError().text());
    else
    {
        while (query.next())
        {
            if (query.isNull(0) == false)
            {
                QPixmap photo;
                photo.loadFromData(query.value(0).toByteArray(), "PNG");
                ui->textEdit->append("Get Image: OK!");
                return photo;
            }
        }
    }
    return QPixmap();
}
开发者ID:congpp,项目名称:Qt_Proj,代码行数:29,代码来源:mainwindow.cpp

示例3: isCanDelete

bool dialogHallType::isCanDelete(QString id)
{
    QSqlQuery q;
    q.exec(QString("select IDTYPE from BLDG where IDTYPE = %1").arg(id));
    q.next();
    if(!q.isNull(0)) {
        return false;
    }
    return true;
}
开发者ID:Vodogrey,项目名称:ticket-office,代码行数:10,代码来源:dialogHallType.cpp

示例4: alreadyExists

bool RegisterDialog::alreadyExists()
{
    QSqlQuery query;
    query.prepare("select name from CUSTOMER where name = :newLogin");
    query.bindValue(":newLogin", newLogin);
    qDebug()<<"QUERY.EXEC: "<<query.exec();
    qDebug()<<"Last error: "<<query.lastError();
    query.next();
    qDebug()<<"value = "<< query.value(0).toString();
    if (query.isNull(0))
        return false;
           else
        return true;
}
开发者ID:stranger1,项目名称:bookstore_customer,代码行数:14,代码来源:registerdialog.cpp

示例5: populateFromResult

void Graph::populateFromResult(QSqlQuery & qry) {
    bool valid = FALSE;
    bool old_repaint = autoRepaint();
    setAutoRepaint(FALSE);
    QVariant var;
    double val;
    int cols = qry.driver()->record(qry).count();
    while(qry.next()) {
        if(!qry.isNull(0)) {
            setReferenceLabel(qry.at(), qry.value(0).toString());
        }
        for(int c = 1; c < cols; c++) {
            if(!qry.isNull(c)) {
                val = qry.value(c).toDouble(&valid);
                if(valid) {
                    setSetValue(qry.at(), c - 1, val);
                }
            }
        }
    }
    setAutoRepaint(old_repaint);
    if(autoRepaint()) repaint();
}
开发者ID:Wushaowei001,项目名称:xtuple,代码行数:23,代码来源:graph.cpp

示例6: load

/**
    \brief Loads the object with the specified ID from the data store.

    \param id The ID of the object to load.
    \throw std::runtime_error If no table name was specified
                              a \c std::runtime_error will be thrown.
 */
void xtStorable::load(long long id)
{
  if(_data->_tableName.empty())
    throw std::runtime_error("cannot load from the database without a table name");

  std::string sql = "SELECT * FROM \"";
  sql += _data->_tableName;
  sql += "\" WHERE ";
  sql += _data->_prefix;
  sql += "id = '";
  sql += QString::number(id).toStdString();
  sql += "';";

  if(xtlib::debug)
    qDebug() << "executing: " << QString::fromStdString(sql);
  QSqlQuery query;
  query.exec(QString::fromStdString(sql));

  if(!query.first())
    return;

  _data->_enforceReadOnly = false;
  std::set<std::string> propList = getPropertyNames(xtlib::FieldRole);
  for (std::set<std::string>::const_iterator it = propList.begin();
       it != propList.end();
       it++)
  {
    QVariant pFieldData = getProperty(*it, xtlib::FieldRole);
    xtFieldData fd = pFieldData.value<xtFieldData>();
    if(fd.fieldName != "")
    {
      QVariant val; // an empty value which we'll leave for null values
      std::string fieldName = _data->_prefix + fd.fieldName;
      int fi = query.record().indexOf(QString::fromStdString(fieldName));
      if(!query.isNull(fi))
      {
        val = query.value(fi);
      }
    
      setProperty(*it, val);
      setPropertyP(*it, val, xtlib::PreviousValueRole);
    }
    else
    {
      qDebug() << "problem reading field";
    }
  }
  _data->_enforceReadOnly = true;
  _data->_id = id;
}
开发者ID:TEKOA-azurfluh,项目名称:xtlib,代码行数:57,代码来源:xtStorable.cpp

示例7: on_pushButton_Ok_clicked

void login::on_pushButton_Ok_clicked()
{
    const QString entered_login(ui->lineEdit_login->text());
    const QString entered_password(ui->lineEdit_password->text());
    QString correct_password;

    bool connection_established = mainW->openDB();
    if (!connection_established)
    {
       /* QMessageBox::information(0, "Connection problem", "Cannot connect to server.\n"
                                 "Check your connection settings (settings.ini - located in program folder)");*/
        return;
    }
    QSqlQuery query;
    query.prepare("select password_hash, customer_id from CUSTOMER where name = :login");
    query.bindValue(":login", entered_login);
    qDebug()<<"query exec"<<query.exec();
    qDebug()<<query.lastError();
    qDebug()<<"query.next - "<<query.next();
    if (query.isNull(0))
    {
        ui->label_3->setVisible(true);
        return;
    }
    correct_password = query.value(0).toString();
    qDebug()<<"password: "<<correct_password;
    mainW->setCurrent_customer_ID(query.value(1).toInt());
    qDebug()<<"customer ID: "<< mainW->getCurrent_customer_ID();
    mainW->closeDB();

    if (entered_password == correct_password)
    {
        this->setVisible(false);
        mainW->centralWidget()->setVisible(true);
        mainW->dbget_Book();
        mainW->setUsername(ui->lineEdit_login->text());
        mainW->update_wallet();
//        mainW->update_tableView_Books();
        mainW->update_tableView_Bundles();
        mainW->update_tableView_Cart();
        mainW->update_tableView_History();

    } else ui->label_3->setVisible(true);
}
开发者ID:stranger1,项目名称:bookstore_customer,代码行数:44,代码来源:login.cpp

示例8: insertIntoSensor

/*
 * Insert a new row into sensor table
 * @warningFlag: necessary, point out the sensor
 */
QString MainWindow::insertIntoSensor(int warningFlag)
{
    m_strImage=ui->lineEdit_Jpg->text();
    //read image from file
    QByteArray data;
    QString path = m_strImage;
    if(m_strImage.length()==0)
        return 0;
    QFile* file=new QFile(path);
    file->open(QIODevice::ReadOnly);
    data = file->readAll();
    file->close();

    //store image data to variant
    QVariant var(data);
    QString sql = QString("insert into sensor(warning_flag, jpg) values(")+(warningFlag+'0')+", ?)";
    QSqlQuery query;
    query.prepare(sql);

    //bind image value, it will automatically replace the '?' in the sql statement
    query.addBindValue(var);
    if(!query.exec())
        ui->textEdit->append(query.lastError().text());
    else
        ui->textEdit->append("Insert: OK!");

    //return the last id from sensor table, give it to the temperature table
    sql="select max(id) from sensor;";
    query.clear();
    query.prepare(sql);
    if(!query.exec())
        ui->textEdit->append(query.lastError().text());
    else
    {
        while(query.next())
        {
            if(query.isNull(0)==false)
                return query.value(0).toString();
        }
    }
    return "";
}
开发者ID:congpp,项目名称:Qt_Proj,代码行数:46,代码来源:mainwindow.cpp


注:本文中的QSqlQuery::isNull方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。