home *** CD-ROM | disk | FTP | other *** search
- // bulkset.h : header file
- //
- // This is a part of the Microsoft Foundation Classes C++ library.
- // Copyright (C) 1992-1998 Microsoft Corporation
- // All rights reserved.
- //
- // This source code is only intended as a supplement to the
- // Microsoft Foundation Classes Reference and related
- // electronic documentation provided with the library.
- // See these sources for detailed information regarding the
- // Microsoft Foundation Classes product.
-
- #define MAX_TEXT_LEN 40 // This is about as much as will fit in UI
-
- /////////////////////////////////////////////////////////////////////////////
- // CBulkRecordsetMod recordset
-
- class CBulkRecordsetMod : public CRecordset
- {
- public:
- CBulkRecordsetMod(CDatabase* pDatabase = NULL);
- DECLARE_DYNAMIC(CBulkRecordsetMod)
-
- // Operations
- public:
- virtual BOOL Open(UINT nOpenType = AFX_DB_USE_DEFAULT_TYPE,
- LPCTSTR lpszSQL = NULL, DWORD dwOptions = useMultiRowFetch);
-
- virtual BOOL RowsetUpdate(WORD wRow, WORD wLockType = SQL_LOCK_NO_CHANGE);
- virtual BOOL RowsetAdd(WORD wRow, WORD wLockType = SQL_LOCK_NO_CHANGE);
- virtual BOOL RowsetDelete(WORD wRow, WORD wLockType = SQL_LOCK_NO_CHANGE);
-
- // Implemenation
- public:
- BOOL ValidateMod(WORD wRow, WORD wExpectedStatus);
- };
-
- /////////////////////////////////////////////////////////////////////////////
- // CDynamicBulkSet recordset
-
- class CDynamicBulkSet : public CBulkRecordsetMod
- {
- public:
- CDynamicBulkSet(CDatabase* pDatabase = NULL);
- DECLARE_DYNAMIC(CDynamicBulkSet)
-
- virtual void Close();
-
- // Attributes
- int m_nAllocatedFields;
- void** m_ppvData; // allocate dynamically to nColumns later
- void** m_ppvLengths; // allocate dynamically to nColumns later
-
- // Overridables
- virtual void DoBulkFieldExchange(CFieldExchange* pFX);
- virtual void CheckRowsetError(RETCODE nRetCode);
- };
-
- /////////////////////////////////////////////////////////////////////////////
- // CTables - results from SQLTables (borrowed from Catalog2 sample)
-
- class CTables : public CRecordset
- {
- virtual CString GetDefaultConnect() { return ""; }
- virtual CString GetDefaultSQL() { return ""; }
-
- public:
- CTables(CDatabase* pDatabase);
- BOOL Open(LPCSTR pszTableQualifier = NULL,
- LPCSTR pszTableOwner = NULL,
- LPCSTR pszTableName = NULL,
- LPCSTR pszTableType = NULL,
- UINT nOpenType = forwardOnly);
-
- CString m_strTableQualifier;
- CString m_strTableOwner;
- CString m_strTableName;
- CString m_strTableType;
- CString m_strRemarks;
-
- virtual void DoFieldExchange(CFieldExchange*);
- };
-