亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? afxdao.h

?? 計算機科學與技術專業畢業設計
?? H
?? 第 1 頁 / 共 3 頁
字號:
	virtual void ThrowDaoException(int nError = NO_AFX_DAO_ERROR);
};


////////////////////////////////////////////////////////////////////////
// CDaoQueryDef - a DAO QueryDef

class CDaoQueryDef : public CObject
{
	DECLARE_DYNAMIC(CDaoQueryDef)

// Constructors
public:
	CDaoQueryDef(CDaoDatabase* pDatabase);

	virtual void Create(LPCTSTR lpszName = NULL,
		LPCTSTR lpszSQL = NULL);
	virtual void Append();

	virtual void Open(LPCTSTR lpszName = NULL);
	virtual void Close();

// Attributes
public:
	CDaoDatabase* m_pDatabase;
	DAOQueryDef* m_pDAOQueryDef;

	BOOL CanUpdate();

	CString GetName();
	void SetName(LPCTSTR lpszName);
	CString GetSQL();
	void SetSQL(LPCTSTR lpszSQL);
	short GetType();
	COleDateTime GetDateCreated();
	COleDateTime GetDateLastUpdated();
	CString GetConnect();
	void SetConnect(LPCTSTR lpszConnect);
	short GetODBCTimeout();
	void SetODBCTimeout(short nODBCTimeout);
	BOOL GetReturnsRecords();
	void SetReturnsRecords(BOOL bReturnsRecords);
	long GetRecordsAffected();

	BOOL IsOpen() const;

// Operations
public:
	virtual void Execute(int nOptions = dbFailOnError);

	virtual COleVariant GetParamValue(LPCTSTR lpszName);
	virtual COleVariant GetParamValue(int nIndex);
	virtual void SetParamValue(LPCTSTR lpszName,
		const COleVariant& varValue);
	virtual void SetParamValue(int nIndex,
		const COleVariant& varValue);
	void SetParamValueNull(LPCTSTR lpszName);
	void SetParamValueNull(int nIndex);

	short GetFieldCount();
	void GetFieldInfo(int nIndex, CDaoFieldInfo& fieldinfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
	void GetFieldInfo(LPCTSTR lpszName, CDaoFieldInfo& fieldinfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);

	short GetParameterCount();
	void GetParameterInfo(int nIndex, CDaoParameterInfo& paraminfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
	void GetParameterInfo(LPCTSTR lpszName,
		CDaoParameterInfo& paraminfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);

// Overridables
public:

// Implementation
public:
	~CDaoQueryDef();

#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

	DAOFields* m_pDAOFields;
	DAOParameters* m_pDAOParameters;

protected:
	BOOL m_bOpen;
	BOOL m_bNew;

	void InitFieldsCollection();
	void InitParametersCollection();
	void FillParameterInfo(DAOParameter* pDAOParameter,
		CDaoParameterInfo& paraminfo, DWORD dwInfoOptions);

	virtual void ThrowDaoException(int nError = NO_AFX_DAO_ERROR);
};


////////////////////////////////////////////////////////////////////////
// CDaoRecordset - the result of a query or base table browse

class CDaoRecordset : public CObject
{
	DECLARE_DYNAMIC(CDaoRecordset)

// Constructor
public:
	CDaoRecordset(CDaoDatabase* pDatabase = NULL);

	virtual void Open(int nOpenType = AFX_DAO_USE_DEFAULT_TYPE,
		LPCTSTR lpszSQL = NULL, int nOptions = 0);
	virtual void Open(CDaoQueryDef* pQueryDef,
		int nOpenType = dbOpenDynaset, int nOptions = 0);
	virtual void Open(CDaoTableDef* pTableDef,
		int nOpenType = dbOpenTable, int nOptions = 0);
	virtual void Close();

// Attributes
public:
	CDaoDatabase* m_pDatabase;  // Source database for this result set
	DAORecordset* m_pDAORecordset;

	CString m_strFilter;    // Filter string used when constructing SQL
	CString m_strSort;      // Sort string used when constructing SQL

	int m_nFields;
	int m_nParams;

	BOOL m_bCheckCacheForDirtyFields;   // Switch for dirty field checking.

	BOOL CanUpdate() const;
	BOOL CanAppend() const;
	BOOL CanScroll() const;
	BOOL CanRestart();
	BOOL CanTransact();
	BOOL CanBookmark();

	BOOL IsOpen() const;
	BOOL IsBOF() const;
	BOOL IsEOF() const;
	BOOL IsDeleted() const;

	BOOL IsFieldDirty(void* pv);
	BOOL IsFieldNull(void* pv);
	BOOL IsFieldNullable(void* pv);

	CString GetName();
	short GetType();
	short GetEditMode();
	CString GetSQL() const;

	COleDateTime GetDateCreated();
	COleDateTime GetDateLastUpdated();
	COleVariant GetLastModifiedBookmark();
	CString GetValidationRule();
	CString GetValidationText();
	CString GetCurrentIndex();
	void SetCurrentIndex(LPCTSTR lpszIndex);

	long GetRecordCount();

// Operations
public:
	// Cursor operations
	void MoveNext();
	void MovePrev();
	void MoveFirst();
	void MoveLast();
	virtual void Move(long lRows);

	BOOL FindNext(LPCTSTR lpszFilter);
	BOOL FindPrev(LPCTSTR lpszFilter);
	BOOL FindFirst(LPCTSTR lpszFilter);
	BOOL FindLast(LPCTSTR lpszFilter);
	virtual BOOL Find(long lFindType, LPCTSTR lpszFilter);

	COleVariant GetBookmark();
	void SetBookmark(COleVariant varBookmark);
	long GetAbsolutePosition();
	void SetAbsolutePosition(long lPosition);
	float GetPercentPosition();
	void SetPercentPosition(float fPosition);

	// seek allowed on recordset opened as tables (max keys = 13)
	BOOL Seek(LPCTSTR lpszComparison, COleVariant* pKey1,
		COleVariant* pKey2 = NULL, COleVariant* pKey3 = NULL);
	BOOL Seek(LPCTSTR lpszComparison, COleVariant* pKeyArray, WORD nKeys);

	// edit buffer operations
	virtual void AddNew();
	virtual void Edit();
	virtual void Update();
	virtual void Delete();
	virtual void CancelUpdate();

	// field operations
	virtual void GetFieldValue(LPCTSTR lpszName, COleVariant& varValue);
	virtual void GetFieldValue(int nIndex, COleVariant& varValue);
	virtual void SetFieldValue(LPCTSTR lpszName,
		const COleVariant& varValue);
	virtual void SetFieldValue(int nIndex,
		const COleVariant& varValue);
	void SetFieldValue(int nIndex, LPCTSTR lpszValue);
	void SetFieldValue(LPCTSTR lpszName, LPCTSTR lpszValue);
	void SetFieldValueNull(LPCTSTR lpszName);
	void SetFieldValueNull(int nIndex);

	virtual COleVariant GetParamValue(LPCTSTR lpszName);
	virtual COleVariant GetParamValue(int nIndex);
	virtual void SetParamValue(LPCTSTR lpszName,
		const COleVariant& varValue);
	virtual void SetParamValue(int nIndex,
		const COleVariant& varValue);
	void SetParamValueNull(LPCTSTR lpszName);
	void SetParamValueNull(int nIndex);

	void SetFieldDirty(void* pv, BOOL bDirty = TRUE);
	void SetFieldNull(void* pv, BOOL bNull = TRUE);

	void SetLockingMode(BOOL bPessimistic);
	BOOL GetLockingMode();

	// Recordset operations
	virtual void Requery();

	// Jet's remote data caching operations
	void SetCacheStart(COleVariant varBookmark);
	COleVariant GetCacheStart();
	void SetCacheSize(long lSize);
	long GetCacheSize();
	void FillCache(long* pSize = NULL, COleVariant* pBookmark = NULL);

	short GetFieldCount();
	void GetFieldInfo(int nIndex, CDaoFieldInfo& fieldinfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
	void GetFieldInfo(LPCTSTR lpszName, CDaoFieldInfo& fieldinfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);

	short GetIndexCount();
	void GetIndexInfo(int nIndex, CDaoIndexInfo& indexinfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);
	void GetIndexInfo(LPCTSTR lpszName, CDaoIndexInfo& indexinfo,
		DWORD dwInfoOptions = AFX_DAO_PRIMARY_INFO);

// Overridables
public:
	virtual CString GetDefaultDBName();
	virtual CString GetDefaultSQL();

	// for recordset field exchange
	virtual void DoFieldExchange(CDaoFieldExchange* pFX);

// Implementation
public:
	virtual ~CDaoRecordset();

	// Out-of-date functions kept for backward compatability
	virtual COleVariant GetFieldValue(LPCTSTR lpszName);
	virtual COleVariant GetFieldValue(int nIndex);

#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

	CString m_strSQL;

	CDaoQueryDef* m_pQueryDef;  // Source query for this result set
	CDaoTableDef* m_pTableDef;
	ICDAORecordset* m_pICDAORecordsetGetRows;
	DAOFields* m_pDAOFields;
	DAOIndexes* m_pDAOIndexes;

	void SetCursorAttributes();
	void GetDataAndFixupNulls();
	DWORD GetFieldLength(int nFieldIndex);

	BOOL IsFieldStatusDirty(UINT nField);
	void SetDirtyFieldStatus(UINT nField);
	void ClearDirtyFieldStatus(UINT nField);

	BOOL IsFieldStatusNull(UINT nField);
	void SetNullFieldStatus(UINT nField);
	void ClearNullFieldStatus(UINT nField);

	BOOL IsFieldStatusNullable(UINT nField);
	void SetNullableFieldStatus(UINT nField);

	BOOL IsFieldStatusNullableKnown(UINT nField);
	void SetNullableKnownFieldStatus(UINT nField);

	void ClearFieldStatusFlags();
	BOOL IsMatch();

	DWORD m_cbFixedLengthFields;
	DAOCOLUMNBINDING* m_prgDaoColBindInfo;
	DWORD* m_pulColumnLengths;
	DAOFETCHROWS m_DaoFetchRows;
	BYTE* m_pbFieldFlags;
	BYTE* m_pbParamFlags;

	CMapPtrToPtr* m_pMapFieldCache;
	CMapPtrToPtr* m_pMapFieldIndex;

	static void AFX_CDECL StripBrackets(LPCTSTR lpszSrc, LPTSTR lpszDest);

protected:
	BOOL m_bOpen;
	int m_nStatus;

	BOOL m_bAppendable;
	BOOL m_bScrollable;
	BOOL m_bDeleted;

	int m_nOpenType;
	int m_nDefaultType;
	int m_nOptions;

	CString m_strRequerySQL;
	CString m_strRequeryFilter;
	CString m_strRequerySort;

	void BuildSQL();
	void AllocDatabase();

	// RFX Operation Cover Functions
	void BuildSelectList();
	void BuildParameterList();
	void BindFields();
	void BindParameters();
	void Fixup();
	void AllocCache();
	void StoreFields();
	void LoadFields();
	void FreeCache();
	void MarkForEdit();
	void MarkForAddNew();
	int GetFieldIndex(void* pv);
	virtual void SetDirtyFields();

	void InitFieldsCollection();
	void InitIndexesCollection();

	virtual void ThrowDaoException(int nError = NO_AFX_DAO_ERROR);

	friend class CDaoFieldExchange;
	friend class CDaoRecordView;
};

/////////////////////////////////////////////////////////////////////////////
// CDaoRecordView - form for viewing data records

#ifdef _AFXDLL
class CDaoRecordView : public CFormView
#else
class AFX_NOVTABLE CDaoRecordView : public CFormView
#endif
{
	DECLARE_DYNAMIC(CDaoRecordView)

// Construction
protected:  // must derive your own class
	CDaoRecordView(LPCTSTR lpszTemplateName);
	CDaoRecordView(UINT nIDTemplate);

// Attributes
public:
	virtual CDaoRecordset* OnGetRecordset() = 0;

	BOOL IsOnLastRecord();
	BOOL IsOnFirstRecord();

// Operations
public:
	virtual BOOL OnMove(UINT nIDMoveCommand);

// Implementation
public:
	virtual ~CDaoRecordView();
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif
	virtual void OnInitialUpdate();

protected:
	int m_nStatus;
	COleVariant m_varBookmarkCurrent;
	COleVariant m_varBookmarkFirst;
	COleVariant m_varBookmarkLast;

	//{{AFX_MSG(CDaoRecordView)
	afx_msg void OnUpdateRecordFirst(CCmdUI* pCmdUI);
	afx_msg void OnUpdateRecordPrev(CCmdUI* pCmdUI);
	afx_msg void OnUpdateRecordNext(CCmdUI* pCmdUI);
	afx_msg void OnUpdateRecordLast(CCmdUI* pCmdUI);
	//}}AFX_MSG
	afx_msg void OnMove(int cx, int cy);

	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////
// DAODBEngine helpers - implementation specific and undocumented
void AFXAPI AfxDaoInit();
DAODBEngine* AFXAPI AfxDaoGetEngine();
void AFXAPI AfxDaoTerm();

/////////////////////////////////////////////////////////////////////////////
// Inline function declarations

#ifdef _AFX_PACKING
#pragma pack(pop)
#endif

#ifdef _AFX_ENABLE_INLINES
#define _AFXDAOCORE_INLINE AFX_INLINE
#define _AFXDAODFX_INLINE AFX_INLINE
#define _AFXDAOVIEW_INLINE AFX_INLINE
#include <afxdao.inl>
#undef _AFXDAOCORE_INLINE
#undef _AFXDAODFX_INLINE
#undef _AFXDAOVIEW_INLINE
#endif

#undef AFX_DATA
#define AFX_DATA

#ifdef _AFX_MINREBUILD
#pragma component(minrebuild, on)
#endif
#ifndef _AFX_FULLTYPEINFO
#pragma component(mintypeinfo, off)
#endif

#endif //__AFXDAO_H__

/////////////////////////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品视频一区二区三区| 欧美日韩国产系列| 国产精品资源网| 久久99国产乱子伦精品免费| 久久精品免费观看| 日本不卡一区二区三区高清视频| 首页亚洲欧美制服丝腿| 日韩高清国产一区在线| 奇米影视一区二区三区小说| 日本特黄久久久高潮| 麻豆国产欧美一区二区三区| 久久91精品久久久久久秒播| 国产真实乱子伦精品视频| 韩国视频一区二区| 高清成人在线观看| 欧美精品免费视频| 在线播放中文字幕一区| 制服.丝袜.亚洲.另类.中文| 6080日韩午夜伦伦午夜伦| 9191久久久久久久久久久| 9191精品国产综合久久久久久| 欧美一区二区三区视频在线观看| 日韩亚洲欧美在线观看| 久久久欧美精品sm网站| 专区另类欧美日韩| 亚洲成a人v欧美综合天堂| 男人的天堂亚洲一区| 国产一区二区91| 91麻豆swag| 欧美男男青年gay1069videost| 日韩一级精品视频在线观看| 国产亚洲一区二区三区| 成人欧美一区二区三区| 亚洲国产精品欧美一二99| 久久er精品视频| 成人国产亚洲欧美成人综合网| 在线亚洲人成电影网站色www| 欧美剧情电影在线观看完整版免费励志电影 | 亚洲国产日韩a在线播放 | 久久久蜜桃精品| 欧美高清在线视频| 一区二区免费看| 久久精品av麻豆的观看方式| 国产成人av影院| 欧美亚洲动漫精品| 欧美精品一区视频| 亚洲伦理在线免费看| 免费看日韩精品| 91丝袜呻吟高潮美腿白嫩在线观看| 欧美日韩激情一区| 欧美激情中文不卡| 日本中文字幕一区二区视频 | 成人黄色电影在线| 欧美精品久久久久久久多人混战| 久久中文娱乐网| 亚洲图片欧美一区| 国产精品中文字幕一区二区三区| 欧美中文字幕久久| 成人免费高清在线观看| 精品噜噜噜噜久久久久久久久试看 | 色综合久久久久综合99| 欧美日韩1区2区| 国产精品天天摸av网| 日本中文字幕一区二区视频| 91一区在线观看| 欧美r级电影在线观看| 一区二区三区欧美在线观看| 国产91高潮流白浆在线麻豆| 日韩写真欧美这视频| 亚洲另类春色校园小说| 国产成人在线视频网址| 欧美一级艳片视频免费观看| 一区二区三区在线免费观看| 国产91精品露脸国语对白| 日韩免费电影一区| 亚洲国产一区二区a毛片| av激情亚洲男人天堂| 精品久久国产97色综合| 人人精品人人爱| 精品污污网站免费看| 亚洲九九爱视频| 成人精品小蝌蚪| 久久蜜桃av一区二区天堂| 日韩电影一区二区三区四区| 日本福利一区二区| 综合分类小说区另类春色亚洲小说欧美| 久久成人综合网| 日韩欧美国产一区二区在线播放| 亚洲综合成人在线视频| 日本高清成人免费播放| 亚洲男人的天堂一区二区| 国产一区日韩二区欧美三区| 久久综合狠狠综合| 国产日韩欧美精品在线| 久久国产精品72免费观看| 欧美性一区二区| 亚洲欧美日韩精品久久久久| 99视频精品免费视频| 国产欧美日韩三区| 国产成人综合自拍| 欧美xfplay| 精品在线播放午夜| 欧美zozo另类异族| 国产精品综合在线视频| 国产亚洲制服色| 成人激情免费网站| 国产精品免费aⅴ片在线观看| 粉嫩一区二区三区性色av| 国产精品女主播在线观看| 丁香另类激情小说| 亚洲视频在线观看一区| 色狠狠色狠狠综合| 亚洲成人午夜影院| 91精品国产综合久久久久久| 青青草97国产精品免费观看无弹窗版| 欧美一区二区三区在线电影| 日产精品久久久久久久性色| 精品国产一区二区三区忘忧草| 激情国产一区二区| 国产视频在线观看一区二区三区 | 日韩三级在线免费观看| 欧美高清激情brazzers| 亚洲成人av中文| 欧美一区永久视频免费观看| 精品一区二区三区蜜桃| 国产日韩精品视频一区| 99re成人在线| 亚洲不卡在线观看| 欧美大片日本大片免费观看| 国产永久精品大片wwwapp| 国产精品电影院| 欧美日韩精品专区| 久久精品国产99久久6| 国产欧美日韩在线| 在线观看视频一区| 日韩电影在线一区| 久久久久国产免费免费| 不卡一区在线观看| 午夜精品久久久久影视| 欧美精品一区二| 99re亚洲国产精品| 日韩高清不卡一区| 国产亚洲欧美一区在线观看| 一本到不卡精品视频在线观看| 亚洲成人黄色影院| 久久久久久久久一| 色噜噜久久综合| 蜜桃久久久久久| 国产精品久久精品日日| 91麻豆精品国产91久久久更新时间| 国产在线一区二区| 亚洲在线观看免费视频| 欧美精品一区二区三区蜜桃| 日本vs亚洲vs韩国一区三区二区| 韩国女主播成人在线观看| 亚洲欧洲国产专区| 色吧成人激情小说| 蜜桃av噜噜一区| 亚洲免费观看高清完整版在线观看熊| 欧美一级国产精品| av一区二区三区黑人| 理论片日本一区| 一区二区在线观看不卡| 久久久91精品国产一区二区精品| 欧美日韩一区三区四区| 成人一区二区视频| 美女一区二区三区| 亚洲国产一区二区视频| 国产精品免费视频观看| 欧美va亚洲va在线观看蝴蝶网| 91麻豆福利精品推荐| 国产传媒欧美日韩成人| 日本不卡视频在线| 伊人色综合久久天天人手人婷| 欧美国产日韩精品免费观看| 欧美一区二区免费观在线| 在线影视一区二区三区| 波多野结衣中文一区| 国产一区二区三区日韩| 日本特黄久久久高潮| 亚洲成人综合视频| 亚洲欧美成aⅴ人在线观看 | 中文字幕一区二区在线播放| 欧美xxxx在线观看| 3751色影院一区二区三区| 91影视在线播放| 大白屁股一区二区视频| 国产中文一区二区三区| 久久成人免费日本黄色| 天堂蜜桃一区二区三区| 亚洲一区二区在线观看视频| 亚洲天天做日日做天天谢日日欢| 久久精品水蜜桃av综合天堂| 欧美一级黄色大片| 91精品婷婷国产综合久久性色| 欧美午夜精品久久久久久孕妇 | 国产精品福利av| 欧美韩国日本综合| 国产欧美一区二区精品久导航| 精品少妇一区二区三区免费观看 |