#ifndef DATABASE_H #define DATABASE_H #include "seller.h" #include #include class Database { public: explicit Database(const std::string& dbname); Database(); ~Database(); Database(const Database&) = delete; Database& operator=(const Database&) = delete; void exec(const std::string& sql); unsigned int storeSellers(std::vector>& sellers, bool onlyDelete = false); unsigned int loadSellers(std::vector>& sellers); private: sqlite3* db_{nullptr}; std::string dbname_; void init(); void beginTransaction(); void endTransaction(); void createNew(); int getVersion(); unsigned int storeArticles(std::vector articles); }; #endif // DATABASE_H