AlbumDao.h 704 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #ifndef ALBUMDAO_H
  2. #define ALBUMDAO_H
  3. #include "Album.h"
  4. class QSqlDatabase;
  5. class Album;
  6. class AlbumDao {
  7. public:
  8. AlbumDao(QSqlDatabase& database);
  9. /**
  10. * @brief init 创建 albums 表
  11. */
  12. void init() const;
  13. /**
  14. * @brief addAlbum 新增
  15. * @param album
  16. */
  17. void addAlbum(Album& album) const;
  18. /**
  19. * @brief updateAlbum 更新
  20. * @param album
  21. */
  22. void updateAlbum(const Album& album) const;
  23. /**
  24. * @brief removeAlbum 删除
  25. * @param id
  26. */
  27. void removeAlbum(int id) const;
  28. /**
  29. * @brief albums 查询
  30. * @return
  31. */
  32. std::unique_ptr<std::vector<std::unique_ptr<Album>>> albums() const;
  33. private:
  34. QSqlDatabase& mDatabase;
  35. };
  36. #endif // ALBUMDAO_H