?? ado2.h
字號:
CADORecordset();
CADORecordset(CADODatabase* pAdoDatabase);
virtual ~CADORecordset()
{
Close();
if(m_pRecordset)
m_pRecordset.Release();
if(m_pCmd)
m_pCmd.Release();
m_pRecordset = NULL;
m_pCmd = NULL;
m_pRecBinding = NULL;
m_strQuery = _T("");
m_strLastError = _T("");
m_dwLastError = 0;
m_nEditStatus = dbEditNone;
}
CString GetQuery()
{return m_strQuery;};
void SetQuery(LPCSTR strQuery)
{m_strQuery = strQuery;};
BOOL RecordBinding(CADORecordBinding &pAdoRecordBinding);
DWORD GetRecordCount();
BOOL IsOpen();
void Close();
BOOL Open(_ConnectionPtr mpdb, LPCTSTR lpstrExec = _T(""), int nOption = CADORecordset::openUnknown);
BOOL Open(LPCTSTR lpstrExec = _T(""), int nOption = CADORecordset::openUnknown);
BOOL OpenSchema(int nSchema, LPCTSTR SchemaID = _T(""));
long GetFieldCount()
{return m_pRecordset->Fields->GetCount();};
BOOL GetFieldValue(LPCTSTR lpFieldName, int& nValue);
BOOL GetFieldValue(int nIndex, int& nValue);
BOOL GetFieldValue(LPCTSTR lpFieldName, long& lValue);
BOOL GetFieldValue(int nIndex, long& lValue);
BOOL GetFieldValue(LPCTSTR lpFieldName, unsigned long& ulValue);
BOOL GetFieldValue(int nIndex, unsigned long& ulValue);
BOOL GetFieldValue(LPCTSTR lpFieldName, double& dbValue);
BOOL GetFieldValue(int nIndex, double& dbValue);
BOOL GetFieldValue(LPCTSTR lpFieldName, CString& strValue, CString strDateFormat = _T(""));
BOOL GetFieldValue(int nIndex, CString& strValue, CString strDateFormat = _T(""));
BOOL GetFieldValue(LPCTSTR lpFieldName, COleDateTime& time);
BOOL GetFieldValue(int nIndex, COleDateTime& time);
BOOL GetFieldValue(int nIndex, bool& bValue);
BOOL GetFieldValue(LPCTSTR lpFieldName, bool& bValue);
BOOL GetFieldValue(int nIndex, COleCurrency& cyValue);
BOOL GetFieldValue(LPCTSTR lpFieldName, COleCurrency& cyValue);
BOOL GetFieldValue(int nIndex, _variant_t& vtValue);
BOOL GetFieldValue(LPCTSTR lpFieldName, _variant_t& vtValue);
BOOL IsFieldNull(LPCTSTR lpFieldName);
BOOL IsFieldNull(int nIndex);
BOOL IsFieldEmpty(LPCTSTR lpFieldName);
BOOL IsFieldEmpty(int nIndex);
BOOL IsEof()
{return m_pRecordset->EndOfFile == VARIANT_TRUE;};
BOOL IsEOF()
{return m_pRecordset->EndOfFile == VARIANT_TRUE;};
BOOL IsBof()
{return m_pRecordset->BOF == VARIANT_TRUE;};
BOOL IsBOF()
{return m_pRecordset->BOF == VARIANT_TRUE;};
void MoveFirst()
{m_pRecordset->MoveFirst();};
void MoveNext()
{m_pRecordset->MoveNext();};
void MovePrevious()
{m_pRecordset->MovePrevious();};
void MoveLast()
{m_pRecordset->MoveLast();};
long GetAbsolutePage()
{return m_pRecordset->GetAbsolutePage();};
void SetAbsolutePage(int nPage)
{m_pRecordset->PutAbsolutePage((enum PositionEnum)nPage);};
long GetPageCount()
{return m_pRecordset->GetPageCount();};
long GetPageSize()
{return m_pRecordset->GetPageSize();};
void SetPageSize(int nSize)
{m_pRecordset->PutPageSize(nSize);};
long GetAbsolutePosition()
{return m_pRecordset->GetAbsolutePosition();};
void SetAbsolutePosition(int nPosition)
{m_pRecordset->PutAbsolutePosition((enum PositionEnum)nPosition);};
BOOL GetFieldInfo(LPCTSTR lpFieldName, CADOFieldInfo* fldInfo);
BOOL GetFieldInfo(int nIndex, CADOFieldInfo* fldInfo);
BOOL AppendChunk(LPCTSTR lpFieldName, LPVOID lpData, UINT nBytes);
BOOL AppendChunk(int nIndex, LPVOID lpData, UINT nBytes);
BOOL GetChunk(LPCTSTR lpFieldName, CString& strValue);
BOOL GetChunk(int nIndex, CString& strValue);
BOOL GetChunk(LPCTSTR lpFieldName, LPVOID pData);
BOOL GetChunk(int nIndex, LPVOID pData);
CString GetString(LPCTSTR lpCols, LPCTSTR lpRows, LPCTSTR lpNull, long numRows = 0);
CString GetLastErrorString()
{return m_strLastError;};
DWORD GetLastError()
{return m_dwLastError;};
void GetBookmark()
{m_varBookmark = m_pRecordset->Bookmark;};
BOOL SetBookmark();
BOOL Delete();
BOOL IsConnectionOpen()
{return m_pConnection != NULL && m_pConnection->GetState() != adStateClosed;};
_RecordsetPtr GetRecordset()
{return m_pRecordset;};
_ConnectionPtr GetActiveConnection()
{return m_pConnection;};
BOOL SetFilter(LPCTSTR strFilter);
BOOL SetSort(LPCTSTR lpstrCriteria);
BOOL SaveAsXML(LPCTSTR lpstrXMLFile);
BOOL OpenXML(LPCTSTR lpstrXMLFile);
BOOL Execute(CADOCommand* pCommand);
BOOL Requery();
public:
void SetDatabase(CADODatabase * pDB);
_RecordsetPtr m_pRecordset;
_CommandPtr m_pCmd;
protected:
_ConnectionPtr m_pConnection;
int m_nSearchDirection;
CString m_strFind;
_variant_t m_varBookFind;
_variant_t m_varBookmark;
int m_nEditStatus;
CString m_strLastError;
DWORD m_dwLastError;
void dump_com_error(_com_error &e);
IADORecordBinding *m_pRecBinding;
CString m_strQuery;
protected:
BOOL PutFieldValue(LPCTSTR lpFieldName, _variant_t vtFld);
BOOL PutFieldValue(_variant_t vtIndex, _variant_t vtFld);
BOOL GetFieldInfo(FieldPtr pField, CADOFieldInfo* fldInfo);
BOOL GetChunk(FieldPtr pField, CString& strValue);
BOOL GetChunk(FieldPtr pField, LPVOID lpData);
BOOL AppendChunk(FieldPtr pField, LPVOID lpData, UINT nBytes);
};
class CADOParameter
{
public:
enum cadoParameterDirection
{
paramUnknown = adParamUnknown,
paramInput = adParamInput,
paramOutput = adParamOutput,
paramInputOutput = adParamInputOutput,
paramReturnValue = adParamReturnValue
};
CADOParameter(int nType, long lSize = 0, int nDirection = paramInput, CString strName = _T(""));
virtual ~CADOParameter()
{
m_pParameter.Release();
m_pParameter = NULL;
m_strName = _T("");
}
BOOL SetValue(int nValue);
BOOL SetValue(long lValue);
BOOL SetValue(double dbValue);
BOOL SetValue(CString strValue);
BOOL SetValue(COleDateTime time);
BOOL SetValue(_variant_t vtValue);
BOOL GetValue(int& nValue);
BOOL GetValue(long& lValue);
BOOL GetValue(double& dbValue);
BOOL GetValue(CString& strValue, CString strDateFormat = _T(""));
BOOL GetValue(COleDateTime& time);
BOOL GetValue(_variant_t& vtValue);
void SetPrecision(int nPrecision)
{m_pParameter->PutPrecision(nPrecision);};
void SetScale(int nScale)
{m_pParameter->PutNumericScale(nScale);};
void SetName(CString strName)
{m_strName = strName;};
CString GetName()
{return m_strName;};
int GetType()
{return m_nType;};
_ParameterPtr GetParameter()
{return m_pParameter;};
protected:
void dump_com_error(_com_error &e);
protected:
_ParameterPtr m_pParameter;
CString m_strName;
int m_nType;
CString m_strLastError;
DWORD m_dwLastError;
};
class CADOCommand
{
public:
enum cadoCommandType
{
typeCmdText = adCmdText,
typeCmdTable = adCmdTable,
typeCmdTableDirect = adCmdTableDirect,
typeCmdStoredProc = adCmdStoredProc,
typeCmdUnknown = adCmdUnknown,
typeCmdFile = adCmdFile
};
CADOCommand(CADODatabase* pAdoDatabase, CString strCommandText = _T(""), int nCommandType = typeCmdStoredProc);
virtual ~CADOCommand()
{
m_pCommand.Release();
m_pCommand = NULL;
m_strCommandText = _T("");
}
void SetTimeout(long nTimeOut)
{m_pCommand->PutCommandTimeout(nTimeOut);};
void SetText(CString strCommandText);
void SetType(int nCommandType);
int GetType()
{return m_nCommandType;};
BOOL AddParameter(CADOParameter* pAdoParameter);
BOOL AddParameter(CString strName, int nType, int nDirection, long lSize, int nValue);
BOOL AddParameter(CString strName, int nType, int nDirection, long lSize, long lValue);
BOOL AddParameter(CString strName, int nType, int nDirection, long lSize, double dblValue, int nPrecision = 0, int nScale = 0);
BOOL AddParameter(CString strName, int nType, int nDirection, long lSize, CString strValue);
BOOL AddParameter(CString strName, int nType, int nDirection, long lSize, COleDateTime time);
BOOL AddParameter(CString strName, int nType, int nDirection, long lSize, _variant_t vtValue, int nPrecision = 0, int nScale = 0);
CString GetText()
{return m_strCommandText;};
BOOL Execute();
int GetRecordsAffected()
{return m_nRecordsAffected;};
_CommandPtr GetCommand()
{return m_pCommand;};
protected:
void dump_com_error(_com_error &e);
protected:
_CommandPtr m_pCommand;
int m_nCommandType;
int m_nRecordsAffected;
CString m_strCommandText;
CString m_strLastError;
DWORD m_dwLastError;
};
class CADOException : public CException
{
public:
enum
{
noError, // no error
Unknown, // unknown error
};
DECLARE_DYNAMIC(CADOException);
CADOException(int nCause = 0, CString strErrorString = _T(""));
virtual ~CADOException();
static int GetError(int nADOError);
public:
int m_nCause;
CString m_strErrorString;
protected:
};
void AfxThrowADOException(int nADOError = 1000, CString strErrorString = _T(""));
#endif //AFX_ADO2_H_INCLUDED_
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -