#pragma once #include "DBTableBase.h" namespace OTSSQLITE { class CInformationTable : public CDBTableBase { public: enum class ColumnID { INVALID = -1, MIN = 0, ITEM = 0, CONTENT = 1, COMMENT = 2, MAX = 2 }; virtual void AddColumn(ColumnDefine col) override; virtual int GetColumnCount() override; virtual CString GetTableName() override; virtual void SetTableName(LPCTSTR a_sTableName) override; virtual CString GetColumnName(const int a_nColId) override; virtual CString GetColumnFullName(const int a_nColId) override; virtual CString GetColumnNames(const BOOL a_bWithPrimary = TRUE) override; virtual CString GetColumnFullNames(const BOOL a_bWithPrimary = TRUE) override; virtual ColumnType GetColumnType(const int a_nColId) override; virtual CString GetCreateTableCommandString() override; virtual CString GetDeleteTableCommandString() override; virtual CString GetRemoveAllRowsCommandString() override; virtual CString GetInsertCommandFormatString(const BOOL a_bWithPrimary = FALSE) override; virtual CString GetInsertCommandFormatString(std::vector& a_colIndexes) override; virtual CString GetUpdateCommandFormatString(std::vector& a_updateColIndexes, const int a_nConditionColIndex) override; public: CInformationTable(void); virtual ~CInformationTable(void); private: CDBTableBasePtr myTable; }; }