DBTable.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #pragma once
  2. #include "DBTableBase.h"
  3. #include "ColumnType.h"
  4. namespace OTSSQLITE
  5. {
  6. class CDBTable :public CDBTableBase//the implementation of sqlite table
  7. {
  8. public:
  9. CDBTable();
  10. virtual ~CDBTable(void);
  11. virtual CString GetTableName() override { return m_sTableName; }
  12. virtual void SetTableName(LPCTSTR a_sTableName) override { m_sTableName = a_sTableName; }
  13. virtual void AddColumn(ColumnDefine col);
  14. virtual int GetColumnCount() override { return (int)m_listcolumnDefines.size(); }
  15. virtual CString GetColumnName(const int a_nColId) override;
  16. virtual CString GetColumnFullName(const int a_nColId) override;
  17. virtual CString GetColumnNames(const BOOL a_bWithPrimary = TRUE) override;
  18. virtual CString GetColumnFullNames(const BOOL a_bWithPrimary = TRUE) override;
  19. virtual ColumnType GetColumnType(const int a_nColId) override;
  20. virtual CString GetCreateTableCommandString() override;
  21. virtual CString GetDeleteTableCommandString() override;
  22. virtual CString GetRemoveAllRowsCommandString() override;
  23. virtual CString GetInsertCommandFormatString(const BOOL a_bWithPrimary = FALSE) override;
  24. virtual CString GetInsertCommandFormatString(std::vector<int>& a_colIndexes) override;
  25. virtual CString GetUpdateCommandFormatString(std::vector<int>& a_updateColIndexes, const int a_nConditionColIndex) override;
  26. protected:
  27. std::vector<ColumnDefine> m_listcolumnDefines;
  28. CString m_sTableName;
  29. };
  30. }