void PlaceDialog::save() { QSqlQuery query; if (m_placeID == -1) { // add place query.prepare(QStringLiteral("INSERT INTO Places (name, lat, lon, comment) " "VALUES (:name, :lat, :lon, :comment)")); //qDebug() << "Adding place with query" << query.lastQuery(); } else { // update place query.prepare(QStringLiteral("UPDATE Places SET name=:name, lat=:lat, lon=:lon, comment=:comment " "WHERE id=:id")); query.bindValue(":id", m_placeID); } query.bindValue(":name", ui->leName->text()); query.bindValue(":lat", ui->sbLat->value()); query.bindValue(":lon", ui->sbLon->value()); query.bindValue(":comment", ui->teComment->toPlainText()); if (!query.exec()) { qWarning() << Q_FUNC_INFO << "Query failed with" << query.lastError().text(); return; } if (query.lastInsertId().isValid()) m_placeID = query.lastInsertId().toInt(); }
void DialogMySQLConfig::on_toolButton_add_maker_clicked() { QApplication::setOverrideCursor(Qt::WaitCursor); QSqlQuery query; query.prepare("INSERT INTO makers(maker,header) VALUES(?,?)"); query.addBindValue(m_ui->comboBox_makers->currentText()); query.addBindValue(m_ui->textEdit_doc_header->toHtml()); int l_maker=-1; if(query.exec()) { if(query.lastInsertId().isValid()) { l_maker=query.lastInsertId().toInt(); } } m_ui->comboBox_makers->setMaxCount(0); query.prepare("SELECT * FROM makers ORDER BY id"); if (query.exec()){ m_ui->comboBox_makers->setMaxCount(1000); while (query.next()) { m_ui->comboBox_makers->addItem(query.value(1).toString(),query.value(0).toString()); } } QApplication::restoreOverrideCursor(); if(l_maker >=0 ) { m_ui->comboBox_makers->setCurrentIndex( m_ui->comboBox_makers->findData(l_maker)); QMessageBox::information(this, trUtf8("Добавлено"),trUtf8("Добавлен новый поставщик")); } }
int sqlo::addgroup(project *p, QString nameproject, QString name, int groupparent, int type, QString description, int gquestion, int id) { QSqlQuery qry; if (id != -1) qry.prepare(("UPDATE project_" + p->name + "_groupe Set groupname=?, groupparent=?, type=?, description=?, gquestion=? WHERE id=?;")); else qry.prepare( "INSERT INTO project_" + nameproject + "_groupe (groupname ,groupparent ,type, description, gquestion) VALUES ( ?, ?, ?, ?, ? );" ); qry.addBindValue(name); qry.addBindValue(QString::number(groupparent)); qry.addBindValue(QString::number(type)); qry.addBindValue(description); qry.addBindValue(gquestion); if (id != -1) qry.addBindValue(id); if( !qry.exec() ) qDebug() << qry.lastError(); else qDebug() << "groupe insert success!"; if (id == -1) p->addgroup(name, groupparent, qry.lastInsertId().toInt(), type, description, gquestion); else { vector<group> *tmp = (type == 0) ? &p->listgroup : &p->listqgroup; (*tmp)[id].parentid = groupparent; (*tmp)[id].type = type; (*tmp)[id].description = description; (*tmp)[id].name = name; (*tmp)[id].gquestion = gquestion; } return (qry.lastInsertId().toInt()); }
void SampleModel::saveItems() { QSqlQuery *query = new QSqlQuery(DatabaseAccessor::getDb()); QSqlQuery *query_1 = new QSqlQuery(DatabaseAccessor::getDb()); QString sql = ""; QString sql_items = ""; int pos = -1; sql = "INSERT INTO sample (sample_set_id, location_id, sample_date, water_type_id, comment) "; sql += "VALUES (:sample_set_id,:location_id,:date,:water_id,:comment)"; query->prepare(sql); sql_items = "INSERT INTO item_sample (sample_set_id, sample_id, item_id, value) VALUES (:set_id,:s_id, :i_id, :value)"; query_1->prepare(sql_items); //Сохраняется информаци о пробе, без указания: какие параметры в ней содержатся. //Параметры пробы могут быть сохранены только при обновлении пробы while (!items_to_save.empty()) { query->bindValue(":sample_set_id",Names::sample_set_id); query->bindValue(":location_id",items_to_save.first()->getLocationId()); query->bindValue(":water_id", items_to_save.first()->getWaterId()); query->bindValue(":date", items_to_save.first()->getDate().toString("yyyy-MM-dd hh:mm")); query->bindValue(":comment", items_to_save.first()->getComment()); query->exec(); pos = findItemInPosition(items_to_save.first()->getPosition()); items[pos]->setId(query->lastInsertId().toUInt()); QHash<unsigned int, ItemInSample>::iterator i; unsigned int s_id = 0; s_id = query->lastInsertId().toUInt(); for (i = items_to_save.first()->getComponents()->begin(); i != items_to_save.first()->getComponents()->end(); i ++) { query_1->bindValue(":set_id", Names::sample_set_id); query_1->bindValue(":s_id", s_id); query_1->bindValue(":i_id",i.value().getItemId()); query_1->bindValue(":value",i.value().getValue()); query_1->exec(); } // iter->setChanged(0); // }//for (i = items_to_update.first()->getComponents()->begin(); i != items_to_update.first()->getComponents()->end(); i ++) items_to_save.removeFirst(); } delete query; }
/*! Adds a test network to the database with known properties */ void TestDao::addTestNetwork1(){ //Initialize everything to do with the test network resetTestNetwork1(); //Add network with known properties QSqlQuery query = getQuery("INSERT INTO Networks (Name, Description) VALUES ('testNetwork1Name', 'testNetwork1Description')"); executeQuery(query); testNetID = query.lastInsertId().toUInt(); //Add two neuron groups with neuron type 1 QString queryStr = "INSERT INTO NeuronGroups (NetworkID, Name, Description, Parameters, NeuronTypeID ) VALUES ("; queryStr += QString::number(testNetID) + ", " + "'name1', 'desc1', '" + getConnectionParameterXML() + "', 1)"; query = getQuery(queryStr); executeQuery(query); neurGrp1ID = query.lastInsertId().toUInt(); executeQuery("INSERT INTO IzhikevichExcitatoryNeuronParameters (NeuronGroupID) VALUES (" + QString::number(neurGrp1ID) + ")"); queryStr = "INSERT INTO NeuronGroups (NetworkID, Name, Description, Parameters, NeuronTypeID ) VALUES ("; queryStr += QString::number(testNetID) + ", " + "'name2', 'desc2', '" + getNeuronParameterXML() + "', 1)"; query = getQuery(queryStr); executeQuery(query); neurGrp2ID = query.lastInsertId().toUInt(); executeQuery("INSERT INTO IzhikevichExcitatoryNeuronParameters (NeuronGroupID) VALUES (" + QString::number(neurGrp2ID) + ")"); //Create connection group between the two neuron groups queryStr = "INSERT INTO ConnectionGroups (NetworkID, Description, FromNeuronGroupID, ToNeuronGroupID, Parameters, SynapseTypeID ) VALUES ("; queryStr += QString::number(testNetID) + ", 'conngrpdesc1', " + QString::number(neurGrp1ID) + ", " + QString::number(neurGrp2ID) + ", '" + getConnectionParameterXML() + "', 1)"; query = getQuery(queryStr); executeQuery(query); connGrp1ID = query.lastInsertId().toUInt(); //Add neurons to the groups, storing database id in testNeurIDList testNeurIDList.clear(); testNeurIDList.append(addTestNeuron(neurGrp1ID, -1, -5, -6)); testNeurIDList.append(addTestNeuron(neurGrp1ID, 0, -1, 0)); testNeurIDList.append(addTestNeuron(neurGrp1ID, 9, -4, 0)); testNeurIDList.append(addTestNeuron(neurGrp2ID, 0, -1, 10)); testNeurIDList.append(addTestNeuron(neurGrp2ID, -3, -7, 5)); //Add test connections testConnIDList.append(addTestConnection(connGrp1ID, testNeurIDList[0], testNeurIDList[1], 0.1, 1.1));//0 testConnIDList.append(addTestConnection(connGrp1ID, testNeurIDList[0], testNeurIDList[2], 0.2, 1.2));//1 testConnIDList.append(addTestConnection(connGrp1ID, testNeurIDList[0], testNeurIDList[3], 0.3, 1.3));//2 testConnIDList.append(addTestConnection(connGrp1ID, testNeurIDList[4], testNeurIDList[3], 0.4, 1.4));//3 testConnIDList.append(addTestConnection(connGrp1ID, testNeurIDList[4], testNeurIDList[1], 0.5, 1.5));//4 testConnIDList.append(addTestConnection(connGrp1ID, testNeurIDList[3], testNeurIDList[2], 0.6, 1.6));//5 executeQuery("INSERT INTO IzhikevichSynapseParameters (ConnectionGroupID) VALUES (" + QString::number(connGrp1ID) + ")"); }
int DatabaseManager::insertCliente(QString nombre, QString apellido, QString empresa, QString email, QString telefonofijo, QString telefonocelular,QString direccion, int ciudades_cp) { if(!db.open()){ QMessageBox::critical(0,"Database Error",db.lastError().text()); return -2; } QSqlQuery preQuery; preQuery.exec(QString("SELECT idcliente FROM clientes WHERE nombre = '%1' AND apellido = '%2' AND empresa = '%3' AND email = '%4' AND telefonofijo = '%5' AND telefonocelular = '%6' AND direccion = '%7' AND ciudades_cp = '%8' LIMIT 1;" ).arg(nombre).arg(apellido).arg(empresa).arg(email).arg(telefonofijo).arg(telefonocelular).arg(direccion).arg(ciudades_cp)); if(preQuery.next()) { //There is a record in the table with this same information qDebug() << "Client already exist"; return preQuery.value(0).toInt(); } QSqlQuery query; bool ret = query.exec(QString("INSERT INTO clientes (nombre, apellido, empresa, email, telefonofijo, telefonocelular, direccion, ciudades_cp) VALUES('%1','%2','%3','%4','%5','%6','%7','%8');" ).arg(nombre).arg(apellido).arg(empresa).arg(email).arg(telefonofijo).arg(telefonocelular).arg(direccion).arg(ciudades_cp)); if(ret) { return query.lastInsertId().toInt(); } else { qDebug() << query.lastError().text(); return -1; } }
int DatabaseManager::insertTransaccion(QString idserie,QString prioridad, QString accesorios, QString observaciones, int clientes_idcliente, int balanzas_idbalanza, QString prestables_idprestable, int ubicaciones_idubicacion, QString dateTime) { if(!db.open()){ QMessageBox::critical(0,"Database Error",db.lastError().text()); return -2; } QSqlQuery preQuery; preQuery.exec(QString("SELECT idtransaccion FROM transacciones WHERE idserie = '%1' AND clientes_idcliente = '%2' AND balanzas_idbalanza = '%3' AND fecha_retirada IS NULL LIMIT 1;" ).arg(idserie).arg(clientes_idcliente).arg(balanzas_idbalanza)); if(preQuery.next()) { //There is a record in the table with this same information qDebug() << "Transaction already exist"; return preQuery.value(0).toInt(); } QSqlQuery query; bool ret = query.exec(QString("INSERT INTO transacciones (idserie, prioridad, accesorios, observaciones, clientes_idcliente, balanzas_idbalanza, prestables_idprestable, ubicaciones_idubicacion, fecha_ingresada) VALUES('%1','%2','%3','%4','%5','%6',%7,'%8','%9');" ).arg(idserie).arg(prioridad).arg(accesorios).arg(observaciones).arg(clientes_idcliente).arg(balanzas_idbalanza).arg(prestables_idprestable).arg(ubicaciones_idubicacion).arg(dateTime)); if(ret) { return query.lastInsertId().toInt(); } else { qDebug() << query.lastError().text(); qDebug() << query.lastQuery(); return -1; } }
bool DbManager::addPerson(const Person *person) { if(person && person->isSufficient()) { QSqlQuery query; QString query_string = "INSERT INTO people (first_name, last_name, personal_code, job, email, phone) " "VALUES (:first_name, :last_name, :personal_code, :job, :email, :phone)"; query.prepare(query_string); query.bindValue(":first_name", person->getFirst_name()); query.bindValue(":last_name", person->getLast_name()); query.bindValue(":personal_code", person->getPersonal_code()); query.bindValue(":job", person->getJob()); query.bindValue(":email", person->getEmail()); query.bindValue(":phone", person->getPhone()); if(query.exec()) { int id_person = query.lastInsertId().toInt(); addAddress(id_person, person->getAddress()); int id_license = getIdLicense(person->getLicense()); if(id_license > 0) { addLicenseToPerson(id_person, id_license, person->getDateOfIssue()); } return true; } } return false; }
void ChannelWatcher::storeContactInfo() { QSqlQuery insertContactIdQuery; insertContactIdQuery.prepare(QStringLiteral("INSERT INTO contactData VALUES (NULL, :contactId, :displayName);")); insertContactIdQuery.bindValue(QStringLiteral(":contactId"), m_channel->targetContact()->id()); const KPeople::PersonData person(QStringLiteral("ktp://") + m_accountObjectPath.mid(35) + QStringLiteral("?") + m_channel->targetContact()->id()); insertContactIdQuery.bindValue(QStringLiteral(":displayName"), person.name()); if (!m_db.transaction()) { qWarning() << "Cannot get a transaction lock for inserting contact data!"; } if (insertContactIdQuery.exec()) { m_db.commit(); m_contactDbId = insertContactIdQuery.lastInsertId().toUInt(); } else { qWarning() << "Inserting contact data into database has failed:" << insertContactIdQuery.lastError().text(); m_db.rollback(); // Now we assume here that it failed because of the UNIQUE constraint // so try to get the id from the database, assuming it already exists QSqlQuery selectContactId; selectContactId.prepare(QStringLiteral("SELECT id FROM contactData WHERE targetContact = :targetContact")); selectContactId.bindValue(QStringLiteral(":targetContact"), m_channel->targetContact()->id()); selectContactId.exec(); if (!selectContactId.lastError().isValid() && selectContactId.first()) { m_contactDbId = selectContactId.value(0).toUInt(); } else { qWarning() << "Error while getting contact id from database:" << selectContactId.lastError().text(); } } }
void smaas::maasKaydet2(QStringList &listSilinenMaas,QTableWidget* tblMaas) { QSqlQuery query; //yeni eklenen kayıtlar for(int i=0;i<tblMaas->rowCount();i++) { if(tblMaas->item(i,dgs.msSutunKayit)->text()=="0") { query.exec(QString("insert into maas(m_tarih, m_calisan, m_maas, m_ay, m_tur, m_hesap) values ('%1', '%2', '%3', '%4', '%5', '%6')").arg(tblMaas->item(i,dgs.msSutunTarih)->text()).arg(tblMaas->item(i,dgs.msSutunCalisan)->text()).arg(tblMaas->item(i,dgs.msSutunMaas)->text()).arg(tblMaas->item(i,dgs.msSutunAy)->text()).arg(tblMaas->item(i,dgs.msSutunTur)->text()).arg(tblMaas->item(i,dgs.msSutunHesap)->text())); tblMaas->item(i,dgs.msSutunKayit)->setText(query.lastInsertId().toString()); } } //////////////////////// //silinen kayıtlar for(int i=0;i<listSilinenMaas.count();i++) { query.exec(QString("delete from maas where m_id='%1'").arg(listSilinenMaas.at(i))); } ////////////////////// //değiştirilen kayıtlar for(int i=0;i<tblMaas->rowCount();i++) { if(tblMaas->item(i,dgs.msSutunDegisim)->text()=="1") { query.exec(QString("update maas set m_tarih='%1', m_calisan='%2', m_maas='%3', m_ay='%4', m_tur='%5', m_hesap='%7' where m_id='%6'").arg(tblMaas->item(i,dgs.msSutunTarih)->text()).arg(tblMaas->item(i,dgs.msSutunCalisan)->text()).arg(tblMaas->item(i,dgs.msSutunMaas)->text()).arg(tblMaas->item(i,dgs.msSutunAy)->text()).arg(tblMaas->item(i,dgs.msSutunTur)->text()).arg(tblMaas->item(i,dgs.msSutunKayit)->text()).arg(tblMaas->item(i,dgs.msSutunHesap)->text())); tblMaas->item(i,dgs.msSutunDegisim)->setText("0"); } } ///////////////////// }
void CSinglePrealertEdit::on_buttonBox_accepted() { if(m_newAlert) { for(int j = 0; j < m_Prealerts->count(); j++) { QSqlQuery lqry; lqry.prepare("INSERT INTO tblPrealert (DDate, PersID) VALUES (:Date, :PID);"); lqry.bindValue(":Date", m_Prealerts->at(j).Date().toString("yyyy-MM-dd")); lqry.bindValue(":PID", m_actPers->id()); lqry.exec(); int ppid = lqry.lastInsertId().toInt(); for(int i = 0; i < m_paTypes->count(); i++) { QSqlQuery ltqry; ltqry.prepare("INSERT INTO tblPATypes (PAID, TypeID) VALUES (:PAID, :TID);"); ltqry.bindValue(":PAID", ppid); ltqry.bindValue(":TID", m_paTypes->at(i).type()->id()); ltqry.exec(); } } } else { } close(); }
/*! * \brief insert a new obj into the table behaviortask * \param obj a pointer to the object with of the new obj * \return an integer id of new row * \retval -1 if fail. */ int BehaviorTaskDAO::insert(BehaviorTaskObject * obj) { if(!db->isOpen()) db->open(); QSqlQuery query; bool ret = query.exec(QString("insert into behaviortask values ( NULL, %1, %2, %3, %4, %5, '%6')") .arg(obj->getIDConn()) .arg(obj->getIDSubject()) .arg(obj->getIDTask()) .arg(obj->getTimeStart()) .arg(obj->getTimeEnd()) .arg(obj->getLabel())); int newId = -1; // Get database given autoincrement value if (ret) { newId = query.lastInsertId().toInt(); }else{ qCritical() << query.lastQuery(); qCritical() << query.lastError(); qCritical() << db->lastError(); } db->close(); return newId; }
void Message::addToDb() { QSqlQuery query; query.prepare("INSERT INTO message (" "direction, state, conversation_id, conversation, message_id, composed_time, received_time, content, signature, sender, encoding" ") VALUES (" ":direction, :state, :conversation_id, :conversation, :message_id, :composed_time, :received_time, :content, :signature, :sender, :encoding" ")"); assert(data_); assert(data_->composedTime.isValid()); query.bindValue(":direction", static_cast<int>(direction_)); query.bindValue(":state", static_cast<int>(state_)); query.bindValue(":conversation_id", conversationId_); query.bindValue(":conversation", data_->conversation); query.bindValue(":message_id", data_->messageId); query.bindValue(":composed_time", data_->composedTime); query.bindValue(":received_time", sentReceivedTime_); query.bindValue(":content", data_->content); query.bindValue(":signature", data_->signature); query.bindValue(":sender", data_->sender); query.bindValue(":encoding", data_->encoding); if(!query.exec()) { throw Error(QStringLiteral("Failed to add Message: %1").arg( query.lastError().text())); } id_ = query.lastInsertId().toInt(); LFLOG_INFO << "Added message " << data_->messageId.toHex() << " to the database with id " << id_; }
QVariant Database::addNote(QSqlQuery &q, const QString &rawText, const QString &richText) { q.addBindValue(rawText); q.addBindValue(richText); q.exec(); return q.lastInsertId(); }
QVariant Database::_addDataType(QSqlQuery &q, int id, const QString &name) { q.addBindValue(id); q.addBindValue(name); q.exec(); return q.lastInsertId(); }
bool ModelObject::save() { QSqlQuery query; QStringList fields; QStringList questionMarks; QList<QVariant> values; foreach (auto field, mModel->fields()) if (field != "id") { fields.append(field); values.append(mData[field]); questionMarks.append("?"); } if (id() == -1) { auto fieldString = fields.join(", "); auto questionMarkString = questionMarks.join(", "); query.prepare(QString("INSERT INTO %1(%2) VALUES(%3)") .arg(mModel->databaseTable()).arg(fieldString).arg(questionMarkString)); foreach (auto value, values) query.addBindValue(value); mModel->mBotInterface->executeDatabaseQuery(query); mData["id"] = query.lastInsertId().toLongLong(); return BotUtils::getNumRowsAffected(query); }
void sdigergelir::digerGelirKaydet(QStringList &listSilinenDigerGelir, QTableWidget *tblDigerGelir) { QSqlQuery query; //yeni eklenen kayıtlar for(int i=0;i<tblDigerGelir->rowCount();i++) { if(tblDigerGelir->item(i,dgs.dglSutunKayit)->text()=="0") { query.exec(QString("insert into digergelir(dgl_tarih, dgl_isim, dgl_muhatap, dgl_tutar, dgl_aciklama, dgl_hesap) values ('%1', '%2', '%3', '%4', '%5', '%6')").arg(tblDigerGelir->item(i,dgs.dglSutunTarih)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunIsim)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunMuhatap)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunTutar)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunAciklama)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunHesap)->text())); tblDigerGelir->item(i,dgs.dglSutunKayit)->setText(query.lastInsertId().toString()); } } //////////////////////// //silinen kayıtlar for(int i=0;i<listSilinenDigerGelir.count();i++) { query.exec(QString("delete from digergelir where dgl_id='%1'").arg(listSilinenDigerGelir.at(i))); } ////////////////////// //değiştirilen kayıtlar for(int i=0;i<tblDigerGelir->rowCount();i++) { if(tblDigerGelir->item(i,dgs.dglSutunDegisim)->text()=="1") { query.exec(QString("update digergelir set dgl_tarih='%1', dgl_isim='%2', dgl_muhatap='%3', dgl_tutar='%4', dgl_aciklama='%5', dgl_hesap='%6' where dgl_id='%7'").arg(tblDigerGelir->item(i,dgs.dglSutunTarih)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunIsim)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunMuhatap)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunTutar)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunAciklama)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunHesap)->text()).arg(tblDigerGelir->item(i,dgs.dglSutunKayit)->text())); tblDigerGelir->item(i,dgs.dglSutunDegisim)->setText("0"); } } }
bool AbstractDocument::getArticleId(QString name, int formDirection, int &id) { QSqlQuery sql; sql.exec(QString("SELECT ar_id FROM article WHERE ar_name = '%1' AND ar_form_direction = %2") .arg(name) .arg(formDirection)); if (sql.lastError().isValid()) { qDebug() << sql.lastError(); return false; } if (sql.next()) { id = sql.value(0).toInt(); } else { sql.exec(QString("INSERT INTO article (ar_name, ar_form_direction,ar_unit) " "VALUES ('%1',%2,(SELECT um_id FROM sy_unit ORDER BY um_default DESC LIMIT 1)) ") .arg(name) .arg(formDirection)); if (sql.lastError().isValid()) { qDebug() << sql.lastError(); return false; } id = sql.lastInsertId().toInt(); } return true; }
/*! * \brief insert a new obj into the table behavioreventpacket * \param obj a pointer to the object with of the new obj * \return an integer id of new row * \retval -1 if fail. */ int BehaviorEventPacketDAO::insert(BehaviorEventPacketObject * obj) { if(!db->isOpen()) db->open(); QSqlQuery query; bool ret = query.exec(QString("insert into behavioreventpacket values ( NULL, %1, %2, %3, datetime('%4', 'unixepoch', 'localtime'), %5, %6, %7, %8, %9, '%10')") .arg(obj->getIDTask()) .arg(obj->getPort()) .arg(obj->getIDPacket()) .arg(obj->getTimeServer()) .arg(obj->getTimeSec()) .arg(obj->getTimeUSec()) .arg(obj->getPin()) .arg(obj->getTypeEvent()) .arg(obj->getTypePin()) .arg(obj->getPinContext())); int newId = -1; // Get database given autoincrement value if (ret) { newId = query.lastInsertId().toInt(); }else{ qCritical() << query.lastQuery(); qCritical() << query.lastError(); qCritical() << db->lastError(); } db->close(); return newId; }
QSharedPointer<Tag> Tag::getOrCreate(TagType type, QString &name) { QSqlQuery query; query.prepare("SELECT * FROM " TABLE_Tags " WHERE " KEY_Tag_Type " = ? AND " KEY_Tag_Name " = ?"); query.addBindValue(QVariant((int)type)); query.addBindValue(QVariant(name)); query.exec(); if(query.next()) return QSharedPointer<Tag>(new Tag(query)); else { Tag *tag = new Tag(type, name); query.prepare("INSERT INTO " TABLE_Tags " (" KEY_Tag_Type ", " KEY_Tag_Name ") VALUES(?, ?)"); query.addBindValue(QVariant((int)type)); query.addBindValue(QVariant(name)); if(!query.exec()) { QLOG_ERROR() << "Failed to insert tag: " + query.lastError().text(); return QSharedPointer<Tag>(); } else { tag->setId(query.lastInsertId().toInt()); } return QSharedPointer<Tag>(tag); } }
int AgregarCarga::guardar(){ if(validarCarga()) { QSqlQuery query; query.prepare("insert into cargas (fecha, grano, cosecha, kilos, lugar_carga, tipo, observaciones, en_deposito, cliente, carta_porte) " "values(:fecha,:grano,:cosecha, :kilos, :lugar_carga, :tipo, :observaciones, :deposito, :cliente, :carta_porte)"); query.bindValue(":fecha", ui->fecha->date()); query.bindValue(":grano", ui->grano->itemData(ui->grano->currentIndex()).toInt()); query.bindValue(":cosecha", ui->cosecha->currentText()); query.bindValue(":kilos", ui->kilos->text().toDouble()); query.bindValue(":lugar_carga", ui->origen->itemData(ui->origen->currentIndex()).toInt()); query.bindValue(":tipo", ui->tipo->currentText().toInt()); query.bindValue(":observaciones", ui->observaciones->toPlainText()); query.bindValue(":deposito", 1); query.bindValue(":cliente", ui->cliente->itemData(ui->cliente->currentIndex()).toLongLong()); query.bindValue(":carta_porte", ui->cPorte->text().toLongLong()); if(!query.exec()) { QMessageBox::warning(0, QObject::tr("Advertencia"),"Ha ocurrido un error, por favor inténtelo nuevamente"); return -1; } else { this->accept(); return query.lastInsertId().toInt(); } } return -1; }
QVariant DatabaseManager::insertRentItem(const QVariant& name, const QVariant& cost) { RentItem item; item.m_name = name.toString(); item.m_cost = cost.toInt(); bool ret = false; int retVal = -1; if (db.isOpen()) { //item->id = nextId(); // We demostrates autoincrement in this case // http://www.sqlite.org/autoinc.html // NULL = is the keyword for the autoincrement to generate next value QSqlQuery query; ret = query.prepare("INSERT INTO rentitem (name, cost) " "VALUES (:name, :cost)"); if (ret) { query.bindValue(":name", item.m_name); query.bindValue(":cost", item.m_cost); ret = query.exec(); } // Get database given autoincrement value if (ret) { // http://www.sqlite.org/c3ref/last_insert_rowid.html item.m_id = query.lastInsertId().toInt(); retVal = item.m_id; } } return QVariant(retVal); }
void AddExternalRecitalPieceDialog::accept() { //zuerst Komponist suchen oder hinzufügen if(ui->lineEdit_composer->text().isEmpty() || ui->lineEdit_title->text().isEmpty() || ui->plainTextEdit_musician->toPlainText().isEmpty()) { QMessageBox::warning(this, tr("Qupil"), QString::fromUtf8(tr("Sie müssen mindestens die Felder \"Komponist\", \"Titel\" und \"Musiker\" ausfüllen\n um den Eintrag hinzuzufügen!").toStdString().c_str()), QMessageBox::Ok); } else { QSqlQuery query; query.prepare("INSERT INTO externalrecitalpiece (composer, title, genre, duration, musician) VALUES (?, ?, ?, ?, ?)"); query.addBindValue(ui->lineEdit_composer->text()); query.addBindValue(ui->lineEdit_title->text()); query.addBindValue(ui->lineEdit_genre->text()); query.addBindValue(ui->spinBox_duration->value()); query.addBindValue(ui->plainTextEdit_musician->toPlainText()); query.exec(); if (query.lastError().isValid()) { qDebug() << "DB Error: 225 - " << query.lastError(); } else { QSqlQuery query2; query2.prepare("INSERT INTO pieceatrecital (pieceid, recitalid, ifexternalpiece) VALUES (?, ?, 1)"); query2.addBindValue(query.lastInsertId().toInt()); query2.addBindValue(currentRecitalId); query2.exec(); if (query2.lastError().isValid()) { qDebug() << "DB Error: 226 - " << query2.lastError(); } } QDialog::accept(); } }
QVariant SQLconnector::addLienTheme(QSqlQuery &q, const QVariant &ArticleID, const QVariant &ThemeID) { q.addBindValue(ArticleID); q.addBindValue(ThemeID); q.exec(); return q.lastInsertId(); }
void ChannelWatcher::storeAccountInfo() { QSqlQuery insertAccountObjectPathQuery; insertAccountObjectPathQuery.prepare(QStringLiteral("INSERT INTO accountData VALUES (NULL, :accountObjectPath);")); insertAccountObjectPathQuery.bindValue(QStringLiteral(":accountObjectPath"), m_accountObjectPath); if (!m_db.transaction()) { // no special handling is required as commit()/rollback() will do nothing // if no transaction exists qWarning() << "Cannot get a transaction lock for inserting account data!"; } if (insertAccountObjectPathQuery.exec()) { m_db.commit(); m_accountDbId = insertAccountObjectPathQuery.lastInsertId().toUInt(); } else { qWarning() << "Inserting account data into database has failed:" << insertAccountObjectPathQuery.lastError().text(); m_db.rollback(); // Now we assume here that it failed because of the UNIQUE constraint // so try to get the id from the database, assuming it already exists QSqlQuery selectAccountId; selectAccountId.prepare(QStringLiteral("SELECT id FROM accountData WHERE accountObjectPath = :accountObjectPath")); selectAccountId.bindValue(QStringLiteral(":accountObjectPath"), m_accountObjectPath); selectAccountId.exec(); if (!selectAccountId.lastError().isValid() && selectAccountId.first()) { m_accountDbId = selectAccountId.value(0).toUInt(); } else { qWarning() << "Error while getting account id from database:" << selectAccountId.lastError().text(); } } }
int DatabaseManager::insertUbicacion(QString etiqueta, int dimension) { if(!db.open()){ QMessageBox::critical(0,"Database Error",db.lastError().text()); return -2;} QSqlQuery preQuery; preQuery.exec(QString("SELECT idubicacion FROM ubicaciones WHERE etiqueta = '%1' AND dimension = '%2' LIMIT 1;" ).arg(etiqueta).arg(enumBalanzaSize.at(dimension))); if(preQuery.next()) { //There is a record in the table with this same information qDebug() << "Ubicacion already exist"; return preQuery.value(0).toInt(); } QSqlQuery query; bool ret = query.exec(QString("INSERT INTO ubicaciones (etiqueta, dimension) VALUES('%1','%2');" ).arg(etiqueta).arg(dimension)); if(ret) { return query.lastInsertId().toInt(); } else { qDebug() << query.lastError().text(); return -1; } }
void scek::cekKaydet2(QStringList &listSilinenCek, QTableWidget* tblCek) { QSqlQuery query; //yeni eklenen kayıtlar for(int i=0;i<tblCek->rowCount();i++) { if(tblCek->item(i,dgs.ckSutunKayit)->text()=="0") { query.exec(QString("insert into cek(c_tarih, c_isim, c_banka, c_tutar,c_muhatap, c_cekno, c_aciklama, c_tur) values ('%1', '%2', '%3', '%4', '%5', '%6', '%7', '%8')").arg(tblCek->item(i,dgs.ckSutunTarih)->text()).arg(tblCek->item(i,dgs.ckSutunIsim)->text()).arg(tblCek->item(i,dgs.ckSutunBanka)->text()).arg(tblCek->item(i,dgs.ckSutunTutar)->text()).arg(tblCek->item(i,dgs.ckSutunMuhatap)->text()).arg(tblCek->item(i,dgs.ckSutunCekNo)->text()).arg(tblCek->item(i,dgs.ckSutunAciklama)->text()).arg(tblCek->item(i,dgs.ckSutunTur)->text())); tblCek->item(i,dgs.ckSutunKayit)->setText(query.lastInsertId().toString()); } } //////////////////////// //silinen kayıtlar for(int i=0;i<listSilinenCek.count();i++) { query.exec(QString("delete from cek where c_id='%1'").arg(listSilinenCek.at(i))); } ////////////////////// //değiştirilen kayıtlar for(int i=0;i<tblCek->rowCount();i++) { if(tblCek->item(i,dgs.ckSutunDegisim)->text()=="1") { query.exec(QString("update cek set c_tarih='%1', c_isim='%2', c_banka='%3', c_tutar='%4',c_muhatap='%5',c_cekno='%6', c_aciklama='%7', c_tur='%8' where c_id='%9'").arg(tblCek->item(i,dgs.ckSutunTarih)->text()).arg(tblCek->item(i,dgs.ckSutunIsim)->text()).arg(tblCek->item(i,dgs.ckSutunBanka)->text()).arg(tblCek->item(i,dgs.ckSutunTutar)->text()).arg(tblCek->item(i,dgs.ckSutunMuhatap)->text()).arg(tblCek->item(i,dgs.ckSutunCekNo)->text()).arg(tblCek->item(i,dgs.ckSutunAciklama)->text()).arg(tblCek->item(i,dgs.ckSutunTur)->text()).arg(tblCek->item(i,dgs.ckSutunKayit)->text())); tblCek->item(i,dgs.ckSutunDegisim)->setText("0"); } } ///////////////////// }
int DatabaseManager::insertPrestable(QString idserie, QString observaciones, int balanzas_idbalanza) { if(!db.open()){ QMessageBox::critical(0,"Database Error",db.lastError().text()); return -2;} QSqlQuery preQuery; preQuery.exec(QString("SELECT idprestable FROM prestables WHERE idserie = '%1' AND observaciones = '%2' AND balanzas_idbalanza = '%3' LIMIT 1;" ).arg(idserie).arg(observaciones).arg(balanzas_idbalanza)); if(preQuery.next()) { //There is a record in the table with this same information qDebug() << "Prestable already exist"; return preQuery.value(0).toInt(); } QSqlQuery query; bool ret = query.exec(QString("INSERT INTO prestables (idserie, observaciones, balanzas_idbalanza) VALUES('%1','%2','%3');" ).arg(idserie).arg(observaciones).arg(balanzas_idbalanza)); if(ret) { return query.lastInsertId().toInt(); } else { qDebug() << query.lastError().text(); return -1; } }
int DatabaseManager::insertBalanza(QString marca, QString modelo, int dimension) { if(!db.open()){ QMessageBox::critical(0,"Database Error",db.lastError().text()); return -2;} QSqlQuery preQuery; preQuery.exec(QString("SELECT idbalanza FROM balanzas WHERE marca = '%1' AND modelo = '%2' AND dimension = '%3' LIMIT 1;" ).arg(marca).arg(modelo).arg(enumBalanzaSize.at(dimension))); if(preQuery.next()) { //There is a record in the table with this same information qDebug() << "Balanza already exist"; return preQuery.value(0).toInt(); } QSqlQuery query; bool ret = query.exec(QString("INSERT INTO balanzas (marca, modelo, dimension) VALUES('%1','%2','%3');" ).arg(marca).arg(modelo).arg(enumBalanzaSize.at(dimension))); if(ret) { return query.lastInsertId().toInt(); } else { qDebug() << query.lastError().text(); return -1; } }
bool ValidDocument::createEntry(){ QSqlDatabase base = QSqlDatabase::database(); bool retour=false; QSqlQuery query; query.prepare("INSERT INTO DocumentValide (idCustomer,price,type,payment,date,view,tva) VALUES (:idCustomer,:price,:type,:payment,:date,:view,:tva )"); query.bindValue(":idCustomer",idCustomer); query.bindValue(":price",price); query.bindValue(":type",docType); query.bindValue(":payment",payment); query.bindValue(":date",mdate.toString("yyyy-MM-dd")); query.bindValue(":view",view); query.bindValue(":tva",tva); retour=query.exec(); if(retour) id=query.lastInsertId().toInt(); query.finish(); base.commit(); Document d(idDocument); d.remove(); return retour; }