Ejemplo n.º 1
0
  bool DDLIndexPopulator::checkConstraints( const IdxTuple& data, const erydbSystemCatalog::ColType& ctype, int i, int column)
  {

    switch( fConstraint )
    {
      case DDL_INVALID_CONSTRAINT:
	return true;

      case DDL_UNIQUE:
      case DDL_PRIMARY_KEY:
	if ((size_t)column + 1 < fColNames.size() )
		return true;
	return checkUnique( i, ctype );

      case DDL_NOT_NULL:
	return checkNotNull( data, ctype );

      case DDL_CHECK:
	return checkCheck( data, ctype );

      default:
	return true; //?
    }

  }
Ejemplo n.º 2
0
void AddBrass::ajoutBrasserie(){
    string rue, pays, ville, nom, codePostal, urlBrass, cheminImage, numero;
    QMMapView mapview(QMMapView::RoadMap,QMCoordinate(0,0),15);

    db_ = new DbBeerTemple();

    rue = ui->leRue->text().toStdString();
    pays = ui->cbPays->currentText().toStdString();
    ville = ui->leVille->text().toStdString();
    nom = ui ->leNomBrasserie->text().toStdString();
    transform(nom.begin(), nom.end(), nom.begin(), ::toupper);
    codePostal = ui->leCp->text().toStdString();
    urlBrass = ui->leUrlBrasserie->text().toStdString();
    numero = ui->leNumero->text().toStdString();

    //Vérification adresse correcte
    if(checkNotNull(rue) && checkNotNull(ville) && checkNotNull(nom) &&
            checkNotNull(codePostal) && checkNotNull(numero) && checkNotNull(pays) && checkNotNull(codePostal)){
        string s = rue + " " + numero + " " + codePostal+ " " + ville;

        //Verification brasserie n'existante pas dans la db
        if(!(db_->brasseriePresente(nom))){

            if(!(checkNotNull(urlBrass))){
                urlBrass = "";
            }
            if(selectImage_ != nullptr){
                if(selectImage_->getCheminImage() != ""){
                    cheminImage = selectImage_->getCheminImage();
                }else{
                    QMessageBox::information(this,"Image manquante!","La brasserie n'a pas pu être ajoutée.");
                    return;
                }

            }else{
                QMessageBox::information(this,"Image manquante!","La brasserie n'a pas pu être ajoutée.");
                return;
            }
            Brasserie brasserie(nom,urlBrass,cheminImage,pays,ville,rue,numero,codePostal);
            if(db_->ajoutBrasserie(brasserie)){
                ui->leRue->clear();
                ui->leVille->clear();
                ui->leNomBrasserie->clear();
                ui->leCp->clear();
                ui->leUrlBrasserie->clear();
                ui->leNumero->clear();
                selectImage_->setCheminImage("");
                selectImage_->setNomFichier(QString());
                ui->lbImageBrasserie->setText("image");
                QMessageBox::information(this,"Ajout valide","La brasserie a bien été ajoutée");
            }
        }else{
            QMessageBox::warning(this,"brasserie déjà présente", "la brasserie est deja presente dans la db");
        }
    }else{
        QMessageBox::warning(this,"Erreur!", "Tous les champs doivent être remplis pour ajouter une brasserie TABARNAK!");
    }
    delete db_;
}
Ejemplo n.º 3
0
void SM_Manager::GetAttrName(const char *relName,char attrNames[100][100],bool *ischecked,bool *isnotnull,AttrType* attrType){
  RM_FileScan attribute_scanner(attribute_fh, STRING, RELNAME_LENGTH, 0, EQ_OP, 
                                (void*)relName, strlen(relName));
  RC ret;
  RM_Record record;
  Byte *mem;
  int cnt=0;
  while( (ret=attribute_scanner.GetNextRec(record)) != NOT_FOUND ){
  //  record.GetRid(rid);
  //  attribute_fh.DeleteRec(rid);
    record.GetData(mem);
    //if (genString((char *)(mem+RELNAME_LENGTH),ATTRNAME_LENGTH)==genString(AttrName,strlen(AttrName))){
      memcpy(attrNames[cnt],(mem+RELNAME_LENGTH),ATTRNAME_LENGTH-1);
      ischecked[cnt]=isChecked(relName,attrNames[cnt]);
      isnotnull[cnt]=checkNotNull(relName,attrNames[cnt]);
      attrType[cnt]=(AttrType)*(int*)(mem+RELNAME_LENGTH+ATTRNAME_LENGTH+4);
      cnt++;
    //  attrtype=*(int*)(mem+RELNAME_LENGTH+ATTRNAME_LENGTH+4);
    //}
  }
}