⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dataobjectrowset.h

📁 The ATL OLE DB Provider templates only seem to support read-only rowsets and making them support upd
💻 H
字号:
#include "ConversionProviderRS.h"
#include "UpdatableProxyRowsetImpl.h"
#include "IRowsetExactScrollImpl.h"

class CMyDataObject;

class CDataObjectRowset : 
   public CUpdatableProxyRowsetImpl<
      CMyDataObject, 
      CDataObjectRowset, 
      CConversionProviderCommand,
      CRowsetStorageProxy<CDataObjectRowset>, 
      CRowsetArrayTypeProxy<CDataObjectRowset, CRowsetStorageProxy<CDataObjectRowset> >,
      CSimpleRow,
      IRowsetExactScrollImpl < CDataObjectRowset > >
{
   public :

      BEGIN_COM_MAP(CDataObjectRowset)
	      COM_INTERFACE_ENTRY(IRowsetLocate)
	      COM_INTERFACE_ENTRY(IRowsetScroll)
	      COM_INTERFACE_ENTRY(IRowsetExactScroll)
	      COM_INTERFACE_ENTRY_CHAIN(UpdatableProxyRowsetClass)
      END_COM_MAP()

      // CProxyRowsetImpl requires that we implement these...

      virtual void GetColumnInformation(
         size_t column, 
         DBTYPE &dbType, 
         ULONG &size, 
         std::string &columnName, 
         DWORD &flags);

      virtual void GetColumnData(
         size_t row,
         size_t column,
         DBTYPE &dbType, 
         ULONG &size, 
         void *&pData,
         bool &bIsUpdatable);

      virtual size_t GetNumColumns();

      virtual size_t GetNumRows() const;

      virtual HRESULT AddRow();
      virtual HRESULT RemoveRow(int nIndex);

      // CUpdatableProxyRowsetImpl requires this one as well...

      virtual void UpdateColumn(
         size_t row, 
         size_t column, 
         void *pData);

};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -