123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- #ifndef __ADO_IMPL_HEADER__
- #define __ADO_IMPL_HEADER__
- #pragma once
- #include <vector>
- using namespace std;
- #include "..\..\..\AdoImpl\AdoDef.h"
- #include "..\..\..\AdoImpl\ADODatabase.h"
- #include "..\..\..\AdoImpl\ADORecordset.h"
- #include "..\..\..\AdoImpl\ADOCommand.h"
- class CDataBase;
- typedef struct __ST_DATABASEINFO__
- {
-
- TCHAR szDataSource[MAX_PATH];
- TCHAR szDatabaseTCPPort[MAX_PATH];
- TCHAR szDatabaseAccount[MAX_PATH];
- TCHAR szDatabasePassword[MAX_PATH];
- TCHAR szDatabaseName[MAX_PATH];
- TCHAR szDatabaseFile[MAX_PATH];
- __ST_DATABASEINFO__()
- {
- memset(szDataSource,0,sizeof(TCHAR)*MAX_PATH);
- memset(szDatabaseTCPPort,0,sizeof(TCHAR)*MAX_PATH);
- memset(szDatabaseAccount,0,sizeof(TCHAR)*MAX_PATH);
- memset(szDatabasePassword,0,sizeof(TCHAR)*MAX_PATH);
- memset(szDatabaseName,0,sizeof(TCHAR)*MAX_PATH);
- memset(szDatabaseFile,0,sizeof(TCHAR)*MAX_PATH);
- }
- }STDatabaseInfo,*pSTDatabaseInfo;
- class AdoImpl
- {
- public:
- AdoImpl(void);
- virtual ~AdoImpl(void);
- void dump_com_error(_com_error &e);
- void SetConnectString(IN const int &nType,IN const STDatabaseInfo &tagSTDatabaseInfo);
- bool opendatabase(IN const TCHAR *pConnectString=NULL);
- void closedatabase();
- int Execute(TCHAR *pSQL);
- bool GetADODateBaseStatus();
- CADODatabase *GetAdoDatabase(){return m_pADODatabase;};
- bool OpenADORecordSet(CADORecordset *pRSet,const TCHAR *pSQL);
- void CloseADORecordSet(CADORecordset* pRSet);
- void DeleteADORecordSet(CADORecordset* pRSet);
- inline CString GetQuery() {return m_strQuery;};
- inline void SetQuery(LPCSTR strQuery) {m_strQuery = strQuery;};
- public:
- int GetFieldValueList(__in const TCHAR *pTableName ,__in const TCHAR *pFilters, __in const TCHAR *pSql, __out INT &nFieldCount, __out vector<TString>& vtRet);
- int GetFieldValueList(__in const TCHAR *pTableName ,__in const TCHAR *pSql, __out int &nFieldCount, __out CArray<CStringArray,CStringArray>& strArray);
- DWORD GetTableRecordCount(IN LPCTSTR lpTableName, IN LPCTSTR lpFilters);
- int InsertIntoTable(__in vector<CDataBase*>& vtValues);
- public:
- CRITICAL_SECTION m_csAdo;
- TCHAR m_szConnectString[1024];
- CADODatabase *m_pADODatabase;
- CString m_strQuery;
- CString m_strLastError;
- DWORD m_dwLastError;
- };
- #endif
|