STDDataDB.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #pragma once
  2. #include "DBBase.h"
  3. #include "STDItem.h"
  4. namespace OTSClassifyEngine
  5. {
  6. using namespace OTSSQLITE;
  7. class __declspec(dllexport) CSTDDataDB
  8. {
  9. public:
  10. CSTDDataDB(CDBStoreBasePtr a_datastore);
  11. ~CSTDDataDB();
  12. CSTDItemPtr GetSTDItemById(const long a_nIncAId);
  13. CSTDItemsList& GetSTDItemList(const BOOL a_bForce = FALSE);
  14. virtual CDBTableBasePtr GetTableInfo() ;
  15. virtual BOOL Init(const BOOL a_bClean = FALSE) ;
  16. virtual BOOL CreateTable(const BOOL a_bForce = FALSE) ;
  17. virtual BOOL DeleteTable() ;
  18. virtual BOOL RemoveAllRows() ;
  19. virtual BOOL IsDBExist() ;
  20. virtual CDBStoreBasePtr GetDatastore() ;
  21. virtual CDBQueryBasePtr GetTableQuery(LPCTSTR a_sOrderColumnName = nullptr) ;
  22. protected:
  23. BOOL ReadSTDItemList();
  24. CSTDItemsList ReadSTDItemList(CDBQueryBasePtr a_query);
  25. BOOL ReadSTDItem(CDBQueryBasePtr a_query);
  26. CDBQueryBasePtr GetQueryById(const long a_nIncAId);
  27. protected:
  28. CDBTableBasePtr m_tableInfo;
  29. CSTDItemPtr m_pSTDItem;
  30. CSTDItemsList m_listSTDItem;
  31. private:
  32. CDBBasePtr myDB;
  33. };
  34. typedef std::shared_ptr<CSTDDataDB> __declspec(dllexport) CSTDDataDBPtr;
  35. }