void Database::add(Scientist scientist) { QSqlQuery query(connectDatabase()); query.prepare("INSERT INTO Scientists (Name, Gender, YearOfBirth, YearOfDeath) VALUES (:Name, :Gender, :YearOfBirth, :YearOfDeath)"); query.bindValue(":Name", QString::fromStdString(scientist.getName())); query.bindValue(":Gender", QString::fromStdString(scientist.getGender())); query.bindValue(":YearOfBirth", QString::number(scientist.getBirthYear())); query.bindValue(":YearOfDeath", QString::number(scientist.getDeathYear())); query.exec(); }
bool Service::updateScientist(Scientist scientistUpdate) { string bufferFirstName = scientistUpdate.getF(), bufferLastName = ""; seperateFirstLast(bufferFirstName, bufferLastName); Scientist nameUpdated(scientistUpdate.getId(), bufferFirstName, bufferLastName, scientistUpdate.getGender(), scientistUpdate.getYearBorn(), scientistUpdate.getYearDied(), scientistUpdate.getKnownFor()); return scientistRepository.updateScientist(nameUpdated); }
bool Scientistrepository::addToDatabase(Scientist newScientist) { QSqlQuery query; QString fName = QString::fromStdString((newScientist.getF())); QString lName = QString::fromStdString((newScientist.getL())); bool gender = newScientist.getGender(); int born = newScientist.getYearBorn(); int died = newScientist.getYearDied(); QString known = QString::fromStdString((newScientist.getKnownFor())); query.prepare("INSERT INTO Scientists (FirstName, LastName, Gender, Born, Died, KnownFor) " "VALUES (:FirstName, :LastName, :Gender, :Born, :Died, :KnownFor)"); query.bindValue(":FirstName", fName); query.bindValue(":LastName", lName); query.bindValue(":Gender", gender); query.bindValue(":Born", born); query.bindValue(":Died", died); query.bindValue(":KnownFor", known); return query.exec(); }
bool Scientistrepository::updateScientist(Scientist scientistUpdate) { QSqlQuery query; int id = scientistUpdate.getId(); QString fName = QString::fromStdString((scientistUpdate.getF())); QString lName = QString::fromStdString((scientistUpdate.getL())); bool gender = scientistUpdate.getGender(); int born = scientistUpdate.getYearBorn(); int died = scientistUpdate.getYearDied(); QString known = QString::fromStdString((scientistUpdate.getKnownFor())); query.prepare("UPDATE Scientists SET FirstName=:FirstName, LastName=:LastName, " "Gender=:Gender, Born=:Born, Died=:Died, KnownFor=:KnownFor WHERE id=:id"); query.bindValue(":id", id); query.bindValue(":FirstName", fName); query.bindValue(":LastName", lName); query.bindValue(":Gender", gender); query.bindValue(":Born", born); query.bindValue(":Died", died); query.bindValue(":KnownFor", known); return query.exec(); }