Example #1
0
void pgBook::addAreaToBook(Book book, Area area)
{
	pgAreasBooks areasBooksRelation(this->driver);
	data areaBookData;
	areaBookData["area_id"] = area.getId();
	areaBookData["book_id"] = book.getId();
	AreasBooks item(areaBookData);
	areasBooksRelation.create(item);
}
Example #2
0
void pgBook::addAuthorToBook(Book book, Author author)
{
	pgAuthorsBooks authorsBooksRelation(this->driver);
	data authorBookData;
	authorBookData["author_id"] = author.getId();
	authorBookData["book_id"] = book.getId();
	AuthorsBooks item(authorBookData);
	authorsBooksRelation.create(item);
}
Example #3
0
/**
 * @brief Updates book.
 *
 * @param b Book to be updated.
 *
 * This method updates every field of the book, except the id and the referenced
 * authors, publishers and themes.
 */
void BookCollection::updateBook(Book b) throw(DataBaseException)
{
	PreparedStatement updBook("UPDATE books SET isbn = '%1', title = '%2',"
		" edition = '%3', description = '%4', critique = '%5', rating ="
		" '%6', cover = '%7', ebook = '%8', publishingyear = '%9', udc ="
		" '%10', translator = '%11' WHERE id = '%12'", db->getType());
	updBook.arg(b.getIsbn());
	updBook.arg(b.getTitle().toStdString());
	updBook.arg(b.getEdition());
	updBook.arg(b.getDescription().toStdString());
	updBook.arg(b.getCritique().toStdString());
	updBook.arg(b.getRating());
	updBook.arg(b.getCover().toStdString());
	updBook.arg(b.getEbook().toStdString());
	updBook.arg(b.getPubDate().toString("yyyy-MM-dd").toStdString());
	updBook.arg(b.getUDC().toStdString());
	updBook.arg(b.getTranslator().getId());
	updBook.arg(b.getId());

	db->exec(updBook);
}