📄 dbdao.h
字号:
class DLLEXPORT CdbDatabase : public CdbObject
{
public:
// Administration
CONSTRUCTOR CdbDatabase (VOID);
CONSTRUCTOR CdbDatabase (DAODatabase *pdb, BOOL bAddRef=FALSE);
CONSTRUCTOR CdbDatabase (const CdbDatabase &);
CdbDatabase & operator = (const CdbDatabase &);
inline CdbTableDef operator [] (LONG lIndex);
inline CdbTableDef operator [] (LPCTSTR pstrIndex);
VOID OnInterfaceChange (VOID);
// Properties
LONG GetCollatingOrder (VOID);
CString GetConnect (VOID);
VOID SetConnect (LPCTSTR pstrConnect);
CString GetName (VOID);
SHORT GetQueryTimeout (VOID);
VOID SetQueryTimeout (SHORT s);
BOOL GetTransactions (VOID);
BOOL GetUpdatable (VOID);
CString GetVersion (VOID);
LONG GetRecordsAffected (VOID);
CdbConnection GetConnection (VOID);
//Replication properties
CString GetReplicaID (VOID);
CString GetDesignMasterID (VOID);
VOID SetDesignMasterID (LPCTSTR pstrMasterID);
// Methods
VOID Close (VOID);
VOID Execute (LPCTSTR pstrQuery, LONG lOption=-1);
CdbRecordset OpenRecordset (LPCTSTR pstrName, LONG lType=-1, LONG lOptions=-1, LONG lLockEdit=-1);
CdbProperty CreateProperty (LPCTSTR pstrName=NULL, LONG lType=-1, LPVARIANT pvValue=NULL, BOOL bDDL=FALSE);
CdbRelation CreateRelation (LPCTSTR pstrName=NULL, LPCTSTR pstrTable=NULL, LPCTSTR pstrForiegn=NULL, LONG lAttributes=-1);
CdbTableDef CreateTableDef (LPCTSTR pstrName=NULL, LONG lAttributes=-1, LPCTSTR pstrSource=NULL, LPCTSTR pstrConnect=NULL);
CdbQueryDef CreateQueryDef (LPCTSTR pstrName=NULL, LPCTSTR pstrSQL=NULL);
VOID NewPassword (LPCTSTR pstrOld, LPCTSTR pstrNew);
//Replication methods
VOID Synchronize (LPCTSTR pstrReplica, LONG lType=-1);
VOID MakeReplica (LPCTSTR pstrPath, LPCTSTR pstrDescription, LONG lOptions=-1);
VOID PopulatePartial (LPCTSTR pstrDbPathName);
// Collections
CdbTableDefs TableDefs;
CdbQueryDefs QueryDefs;
CdbRelations Relations;
CdbContainers Containers;
CdbRecordsets Recordsets;
};
/*****************************************************************************
* CdbConnection
*/
class DLLEXPORT CdbConnection : public CdbObject
{
public:
// Administration
CONSTRUCTOR CdbConnection (VOID);
CONSTRUCTOR CdbConnection (DAOConnection *pconn, BOOL bAddRef=FALSE);
CONSTRUCTOR CdbConnection (const CdbConnection &);
CdbConnection & operator = (const CdbConnection &);
inline CdbQueryDef operator [] (LONG lIndex);
inline CdbQueryDef operator [] (LPCTSTR pstrIndex);
VOID OnInterfaceChange (VOID);
// Properties
CString GetConnect (VOID);
CString GetName (VOID);
CdbDatabase GetDatabase (VOID);
SHORT GetQueryTimeout (VOID);
VOID SetQueryTimeout (SHORT s);
LONG GetRecordsAffected (VOID);
BOOL GetStillExecuting (VOID);
BOOL GetTransactions (VOID);
BOOL GetUpdatable (VOID);
// Methods
VOID Cancel (VOID);
VOID Close (VOID);
CdbQueryDef CreateQueryDef (LPCTSTR pstrName=NULL, LPCTSTR pstrSQL=NULL);
VOID Execute (LPCTSTR pstrQuery, LONG lOption=-1);
CdbRecordset OpenRecordset (LPCTSTR pstrName, LONG lType=-1, LONG lOptions=-1, LONG lLockEdit=-1);
// Collections
CdbQueryDefs QueryDefs;
CdbRecordsets Recordsets;
};
/*****************************************************************************
* CdbRecordset
*/
class DLLEXPORT CdbRecordset : public CdbObject
{
public:
// Administration
CONSTRUCTOR CdbRecordset (VOID);
CONSTRUCTOR CdbRecordset (DAORecordset *prs, BOOL bAddRef=FALSE);
CONSTRUCTOR CdbRecordset (const CdbRecordset &);
CdbRecordset & operator = (const CdbRecordset &);
inline CdbField operator [] (LONG lIndex);
inline CdbField operator [] (LPCTSTR pstrIndex);
VOID OnInterfaceChange (VOID);
VOID SetGetRowsExInt (VOID);
// Properties
BOOL GetBOF (VOID);
CdbBookmark GetBookmark (VOID);
VOID SetBookmark (class CdbBookmark);
BOOL GetBookmarkable (VOID);
COleDateTime GetDateCreated (VOID);
COleDateTime GetLastUpdated (VOID);
BOOL GetEOF (VOID);
CString GetFilter (VOID);
VOID SetFilter (LPCTSTR pstr);
CString GetIndex (VOID);
VOID SetIndex (LPCTSTR pstr);
CdbBookmark GetLastModified (VOID);
BOOL GetLockEdits (VOID);
VOID SetLockEdits (BOOL b);
CString GetName (VOID);
BOOL GetNoMatch (VOID);
CString GetSort (VOID);
VOID SetSort (LPCTSTR pstr);
BOOL GetTransactions (VOID);
SHORT GetType (VOID);
LONG GetRecordCount (VOID);
BOOL GetUpdatable (VOID);
BOOL GetRestartable (VOID);
CString GetValidationText (VOID);
CString GetValidationRule (VOID);
CdbBookmark GetCacheStart (VOID);
VOID SetCacheStart (CdbBookmark &pbm);
LONG GetCacheSize (VOID);
VOID SetCacheSize (LONG l);
FLOAT GetPercentPosition (VOID);
VOID SetPercentPosition (FLOAT f);
LONG GetAbsolutePosition (VOID);
VOID SetAbsolutePosition (LONG l);
SHORT GetEditMode (VOID);
LONG GetUpdateOptions (VOID);
VOID SetUpdateOptions (LONG l);
SHORT GetRecordStatus (VOID);
BOOL GetStillExecuting (VOID);
LONG GetBatchSize (VOID);
VOID SetBatchSize (LONG l);
LONG GetBatchCollisionCount (VOID);
COleVariant GetBatchCollisions (VOID);
CdbConnection GetConnection (VOID);
// Methods
VOID CancelUpdate (short sType = dbUpdateRegular);
VOID AddNew (VOID);
VOID Close (VOID);
CdbRecordset OpenRecordset (LONG lType=-1, LONG lOption=-1);
VOID Delete (VOID);
VOID Edit (VOID);
VOID FindFirst (LPCTSTR pstrCriteria);
VOID FindLast (LPCTSTR pstrCriteria);
VOID FindNext (LPCTSTR pstrCriteria);
VOID FindPrevious (LPCTSTR pstrCriteria);
VOID MoveFirst (VOID);
VOID MoveLast (LONG lOptions=-1);
VOID MoveNext (VOID);
VOID MovePrevious (VOID);
VOID Seek (LPCTSTR pstrComparison, LONG lNumFields, COleVariant cKey, ...);
VOID Update (short sType = dbUpdateRegular, VARIANT_BOOL bForce = FALSE);
CdbRecordset Clone (VOID);
VOID Requery (CdbQueryDef *pq = NULL);
VOID Move (LONG lRows, CdbBookmark *bm=NULL);
VOID FillCache (LONG lRows=-1, CdbBookmark *pbm=NULL);
CdbQueryDef CopyQueryDef (VOID);
COleVariant GetRows (LONG lRows=-1);
LONG GetRowsEx (LPVOID pvBuffer, LONG cbRow, LPDAORSETBINDING prb, LONG cBinding, LPVOID pvVarBuffer = NULL, LONG cbVarBuffer = 0, LONG lRows = -1);
VOID Cancel (VOID);
BOOL NextRecordset (VOID);
inline VOID GetFieldV (COleVariant &vIndex, COleVariant &vValue);
inline VOID SetFieldV (COleVariant &vIndex, LPVARIANT pv);
COleVariant GetField (LPCTSTR pstrIndex);
COleVariant GetField (LONG lIndex);
COleVariant GetField (COleVariant &vIndex);
COleVariant GetField (CString &str){return GetField((LPCTSTR)str);}
VOID SetField (LPCTSTR pstrIndex, LPVARIANT pv);
VOID SetField (LONG lIndex, LPVARIANT pv);
VOID SetField (COleVariant &vIndex, LPVARIANT pv);
VOID SetField (CString &str, LPVARIANT pv){SetField((LPCTSTR)str, pv);}
// Collections
CdbFields Fields;
protected:
// GetRowsEx interface
CdbGetRowsEx m_GetRowsInt;
};
/*****************************************************************************
* CdbField
*/
class DLLEXPORT CdbField : public CdbObject
{
public:
// Administration
CONSTRUCTOR CdbField (VOID);
CONSTRUCTOR CdbField (DAOField *pfld, BOOL bAddRef=FALSE);
CONSTRUCTOR CdbField (const CdbField &);
CdbField & operator = (const CdbField &);
VOID OnInterfaceChange (VOID);
// Properties
LONG GetCollatingOrder (VOID);
SHORT GetType (VOID);
VOID SetType (SHORT s);
CString GetName (VOID);
VOID SetName (LPCTSTR pstr);
LONG GetSize (VOID);
VOID SetSize (LONG l);
CString GetSourceField (VOID);
CString GetSourceTable (VOID);
COleVariant GetValue (VOID);
VOID SetValue (LPVARIANT pv);
LONG GetAttributes (VOID);
VOID SetAttributes (LONG l);
SHORT GetOrdinalPosition (VOID);
VOID SetOrdinalPosition (SHORT s);
CString GetValidationText (VOID);
VOID SetValidationText (LPCTSTR pstr);
BOOL GetValidateOnSet (VOID);
VOID SetValidateOnSet (BOOL b);
CString GetValidationRule (VOID);
VOID SetValidationRule (LPCTSTR pstr);
CString GetDefaultValue (VOID);
VOID SetDefaultValue (LPCTSTR pstr);
VOID SetDefaultValue (LPVARIANT pv);
BOOL GetRequired (VOID);
VOID SetRequired (BOOL b);
BOOL GetAllowZeroLength (VOID);
VOID SetAllowZeroLength (BOOL b);
BOOL GetDataUpdatable (VOID);
CString GetForeignName (VOID);
VOID SetForeignName (LPCTSTR pstr);
COleVariant GetOriginalValue (VOID);
COleVariant GetVisibleValue (VOID);
// Methods
VOID AppendChunk (LPVARIANT pv);
COleVariant GetChunk (LONG lOffset, LONG lBytes);
LONG FieldSize (VOID);
CdbProperty CreateProperty (LPCTSTR pstrName=NULL, LONG lType=-1, LPVARIANT pvValue=NULL, BOOL bDDL=FALSE);
};
/*****************************************************************************
* CdbQueryDef
*/
class DLLEXPORT CdbQueryDef : public CdbObject
{
public:
// Administration
CONSTRUCTOR CdbQueryDef (VOID);
CONSTRUCTOR CdbQueryDef (DAOQueryDef *pqd, BOOL bAddRef=FALSE);
CONSTRUCTOR CdbQueryDef (const CdbQueryDef &);
CdbQueryDef & operator = (const CdbQueryDef &);
inline CdbField operator [] (LONG lIndex);
inline CdbField operator [] (LPCTSTR pstrIndex);
VOID OnInterfaceChange (VOID);
// Properties
COleDateTime GetDateCreated (VOID);
COleDateTime GetLastUpdated (VOID);
CString GetName (VOID);
VOID SetName (LPCTSTR pstr);
SHORT GetODBCTimeout (VOID);
VOID SetODBCTimeout (SHORT s);
SHORT GetType (VOID);
CString GetSQL (VOID);
VOID SetSQL (LPCTSTR pstr);
BOOL GetUpdatable (VOID);
CString GetConnect (VOID);
VOID SetConnect (LPCTSTR pstr);
BOOL GetReturnsRecords (VOID);
VOID SetReturnsRecords (BOOL b);
LONG GetRecordsAffected (VOID);
LONG GetMaxRecords (VOID);
VOID SetMaxRecords (LONG l);
BOOL GetStillExecuting (VOID);
LONG GetCacheSize (VOID);
VOID SetCacheSize (LONG l);
COleVariant GetPrepare (VOID);
VOID SetPrepare (LPVARIANT pv);
// Methods
CdbRecordset OpenRecordset (LONG lType=-1, LONG lOption=-1, LONG lLockEdit=-1);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -