#pragma once #include "DBTableBase.h" namespace OTSSQLITE { class CSQLiteTable :public CDBTableBase//the implementation of sqlite table { public: CSQLiteTable(); virtual ~CSQLiteTable(void); // ͨ¹ý CDBTableBase ¼Ì³Ð 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; private: CDBTableBasePtr myTable; }; }