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

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

?? adodb.h

?? VC++ 6.0開發。之中打印部分可能對您有值得參考的地方。其他的部分還不是很完善
?? H
字號:
/*************************************************************************
*     數據庫操作類:
*                  CADOConnection(數據庫連接類)
*                  CADODataset(數據集操作類)
*
*
**************************************************************************/
#ifndef ADODB_H
#define ADODB_H

#pragma once
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")


struct CADOFieldInfo//字段信息
{
	char m_strName[30]; 
	short m_nType;
	long m_lSize; 
	long m_lDefinedSize;
	long m_lAttributes;
	short m_nOrdinalPosition;
	BOOL m_bRequired;   
	BOOL m_bAllowZeroLength; 
	long m_lCollatingOrder;  
};
//整型量與字符串的轉換
CString IntToStr(int nVal);

CString LongToStr(long lVal);


class CADOConnection : public CObject
{
public:
    //1.構造和系構函數
	CADOConnection();
	virtual ~CADOConnection();

	DECLARE_DYNCREATE(CADOConnection );
public:
	//2.數據庫連接:open ConDB
	bool ConDB(CString DbName,CString Password="",int DBType=0);
	bool Open(LPCTSTR lpstrConnection = _T(""));
	bool Execute(LPCTSTR lpstrExec);
    //3.
	_ConnectionPtr GetActiveConnection() {return m_pConnection;};
	void SetConnectionString(LPCTSTR lpstrConnection)
		{m_strConnection = lpstrConnection;};
	CString GetConnectionString()
		{return m_strConnection;};
	//4.事務處理
	long BeginTransaction() 
		{return m_pConnection->BeginTrans();};
	long CommitTransaction() 
		{return m_pConnection->CommitTrans();};
	long RollbackTransaction() 
		{return m_pConnection->RollbackTrans();};
	//5.狀態標識
	bool IsOpen();
	void Close();

protected:
    _ConnectionPtr m_pConnection;
 	CString m_strConnection;
};

class CADODataset:public CObject
{
public:
	//1打開參數 編輯參數 位置參數 檢索參數
	enum cadoOpenEnum
	{
		openUnknown = 0,
		openQuery = 1,
		openTable = 2,
		openStoredProc = 3
	};

	enum cadoEditEnum
	{
		dbEditNone = 0,
		dbEditNew = 1,
		dbEdit = 2
	};
	
	enum cadoPositionEnum
	{
	
		positionUnknown = -1,
		positionBOF = -2,
		positionEOF = -3
	};
	
	enum cadoSearchEnum
	{	
		searchForward = 1,
		searchBackward = -1
	};

public:
	//2.構造于系構函數
	CADODataset();
	CADODataset(CADOConnection* pAdoDatabase);
	virtual ~CADODataset();
	DECLARE_DYNCREATE(CADODataset);

private:
   //3.私有 
	_RecordsetPtr m_pRecordset;
  	//CADOConnection* m_pAdocon;
	CString m_strLastError;
	int m_nSearchDirection;
	CString m_strFind;
	_variant_t m_varBookFind;
	_variant_t m_varBookmark;
	int m_nEditStatus;
	void dump_com_error(_com_error &e);
	


	_CommandPtr m_pCmd;
	_ConnectionPtr m_pConnection;
	CString m_strQuery;
   //4.用于列表操作
    void ClearList(CListCtrl &ListCtrl1);
	void FillColumn(CListCtrl &ListCtrl1);
	void FillContent(CListCtrl &ListCtrl1);
public:
	void FillList(CListCtrl &ListCtrl1);

   //5.設置字段值,獲取字段值
	bool SetFieldValue(int nIndex, CString strValue);
	bool SetFieldValue(LPCTSTR lpFieldName, CString strValue);
	bool SetFieldValue(int nIndex, int nValue);
	bool SetFieldValue(LPCTSTR lpFieldName, int nValue);
	bool SetFieldValue(int nIndex, long lValue);
	bool SetFieldValue(LPCTSTR lpFieldName, long lValue);
	bool SetFieldValue(int nIndex, double dblValue);
	bool SetFieldValue(LPCTSTR lpFieldName, double dblValue);
	bool SetFieldValue(int nIndex, COleDateTime time);
	bool SetFieldValue(LPCTSTR lpFieldName, COleDateTime time);

	bool GetFieldValue(LPCTSTR lpFieldName, double& dbValue);
	bool GetFieldValue(int nIndex, double& dbValue);
	bool GetFieldValue(LPCTSTR lpFieldName, bool& dbValue);
	bool GetFieldValue(int nIndex, bool& dbValue);
	bool GetFieldValue(LPCTSTR lpFieldName, long& lValue);
	bool GetFieldValue(int nIndex, long& lValue);
	bool GetFieldValue(LPCTSTR lpFieldName, int& nValue);
	bool GetFieldValue(int nIndex, int& nValue);
	bool GetFieldValue(LPCTSTR lpFieldName, CString& strValue);
	bool GetFieldValue(int nIndex, CString& strValue);
	bool GetFieldValue(LPCTSTR lpFieldName, COleDateTime* time);
	bool GetFieldValue(int nIndex, COleDateTime* time);
	bool IsFieldNull(LPCTSTR lpFieldName);
	bool IsFieldNull(int nIndex);
	bool IsFieldEmpty(LPCTSTR lpFieldName);
	bool IsFieldEmpty(int nIndex);	
   //6.編輯功能
	void CancelUpdate();
	bool Update();
	void Edit();
	bool AddNew();
    //7.關鍵字查找
	bool Find(LPCTSTR lpFind, int nSearchDirection = CADODataset::searchForward);
	bool FindFirst(LPCTSTR lpFind);
	bool FindNext();
    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 = CADODataset::openUnknown);
	bool Open(LPCTSTR lpstrExec = _T(""), int nOption = CADODataset::openUnknown);
	_RecordsetPtr OpenSql(LPCTSTR TblName,LPCTSTR FldList="*",LPCTSTR Constr="",LPCSTR OrderBy="");
    bool ExecSql(LPCSTR SqlStr);
	_RecordsetPtr    ExecStoreProc(LPCSTR SqlProc);

	bool IsEof()
		{return m_pRecordset->adoEOF == 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();};
	long GetAbsolutePosition()
		{return m_pRecordset->GetAbsolutePosition();};
		bool GetFieldInfo(LPCTSTR lpFieldName, CADOFieldInfo* fldInfo);
	void SetAbsolutePage(int nPage)
		{m_pRecordset->PutAbsolutePage((enum PositionEnum)nPage);};
	void SetAbsolutePosition(int nPosition)
		{m_pRecordset->PutAbsolutePosition((enum PositionEnum)nPosition);};

	long GetPageCount()
		{return m_pRecordset->GetPageCount();};
	long GetPageSize()
		{return m_pRecordset->GetPageSize();};
	void SetPageSize(int nSize)
		{m_pRecordset->PutPageSize(nSize);};

	bool GetFieldInfo(int nIndex, CADOFieldInfo* fldInfo);
	bool GetChunk(LPCTSTR lpFieldName, CString& strValue);
	CString GetString(LPCTSTR lpCols, LPCTSTR lpRows, LPCTSTR lpNull, long numRows = 0);
	long GetFieldCount(){ return this->m_pRecordset->GetFields()->GetCount(); }
	void GetBookmark()
		{m_varBookmark = m_pRecordset->Bookmark;};
	bool SetBookmark();
	bool Delete();
	void SetConnection(CADOConnection *pCon)
	  {
           this->m_pConnection=pCon->GetActiveConnection(); 	
	  };
	void SetActiveConnection(_ConnectionPtr pConnection)
	{
	   this->m_pConnection=pConnection;
	};
};





#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99国产精品尤物| 日本中文字幕一区二区有限公司| 成人性生交大片免费| 国产日韩欧美综合在线| 成人做爰69片免费看网站| 亚洲男同性视频| 欧美精品一卡两卡| 国模少妇一区二区三区| 国产三级精品视频| 91精品福利视频| 日韩精品欧美精品| 国产女同性恋一区二区| 91黄色免费网站| 久久电影网站中文字幕| 国产精品欧美一区二区三区| 欧美日韩国产电影| 国产精品99久久久久久似苏梦涵 | 91麻豆精品在线观看| 亚洲精品免费在线观看| 日韩一区二区三区视频在线观看| 高清beeg欧美| 丝袜亚洲另类欧美综合| 国产欧美视频一区二区| 欧美日韩在线免费视频| 国产成人丝袜美腿| 午夜影院在线观看欧美| 国产日韩影视精品| 这里只有精品免费| av激情综合网| 久久99久久久欧美国产| 亚洲欧美电影院| 久久久欧美精品sm网站| 欧美写真视频网站| 国产成人在线视频播放| 亚洲va在线va天堂| 1区2区3区精品视频| 日韩欧美国产wwwww| 色吊一区二区三区| 成人免费视频视频| 久久成人久久爱| 亚洲国产aⅴ天堂久久| 中文一区二区完整视频在线观看| 欧美一区二区私人影院日本| 一本大道久久a久久精品综合| 国产精品一区二区视频| 奇米色777欧美一区二区| 亚洲最大的成人av| 中文字幕免费不卡| 久久婷婷国产综合国色天香| 日韩限制级电影在线观看| 99久久精品免费看| 成人久久久精品乱码一区二区三区| 蜜臀av性久久久久蜜臀aⅴ四虎| 一区二区成人在线视频| 日韩久久一区二区| 中文久久乱码一区二区| 国产婷婷色一区二区三区| 欧美白人最猛性xxxxx69交| 6080yy午夜一二三区久久| 色婷婷久久久综合中文字幕| 99re在线精品| 92国产精品观看| 99热在这里有精品免费| 成人国产精品免费观看动漫| 激情六月婷婷综合| 久久97超碰色| 极品少妇xxxx精品少妇| 久久超级碰视频| 久久精品72免费观看| 蜜乳av一区二区| 精品一区二区三区久久| 国产一区二区三区精品视频 | 国产美女一区二区| 麻豆精品精品国产自在97香蕉| 污片在线观看一区二区| 天天影视网天天综合色在线播放| 亚洲一区影音先锋| 亚洲123区在线观看| 性做久久久久久免费观看 | 免费在线观看一区二区三区| 香蕉成人啪国产精品视频综合网| 亚洲高清不卡在线观看| 亚洲成人精品影院| 麻豆精品一区二区综合av| 麻豆精品久久久| 国产成人在线视频网址| 91色九色蝌蚪| 欧美老女人在线| 精品免费视频.| 欧美国产一区视频在线观看| 亚洲区小说区图片区qvod| 夜夜爽夜夜爽精品视频| 日日夜夜精品免费视频| 国产一区二区三区不卡在线观看 | 色先锋aa成人| 欧美精品久久久久久久久老牛影院| 欧美一区二区三区喷汁尤物| 久久久精品人体av艺术| 综合色中文字幕| 婷婷综合久久一区二区三区| 久久www免费人成看片高清| 国产99精品视频| 在线看不卡av| 久久久影院官网| 亚洲永久免费视频| 国产一区二区伦理| 一本大道久久精品懂色aⅴ| 4438亚洲最大| 中文字幕一区二区三区视频| 日韩高清不卡一区二区三区| 国产成人福利片| 欧美三级资源在线| 久久久一区二区| 亚洲6080在线| 成人av网站在线观看| 日韩一区二区三区视频在线观看| 国产精品伦一区二区三级视频| 亚洲超丰满肉感bbw| 成人美女视频在线看| 91精品久久久久久蜜臀| 亚洲视频在线观看三级| 精品一区二区三区免费播放| 在线观看国产精品网站| 久久精品亚洲国产奇米99| 亚洲超碰精品一区二区| 99久久精品久久久久久清纯| 日韩欧美精品在线视频| 亚洲制服欧美中文字幕中文字幕| 国产精品亚洲第一| 日韩色视频在线观看| 夜夜爽夜夜爽精品视频| 成人久久久精品乱码一区二区三区 | 亚洲人成电影网站色mp4| 精品一区二区三区av| 欧美日韩和欧美的一区二区| 成人欧美一区二区三区1314| 国产在线麻豆精品观看| 欧美精品免费视频| 亚洲免费观看在线视频| 国产99久久久国产精品潘金 | 国产亚洲精品7777| 日韩国产一二三区| 欧美性猛片aaaaaaa做受| 亚洲欧洲精品一区二区三区 | 91免费在线看| 国产亲近乱来精品视频| 久久草av在线| 欧美xxxx老人做受| 免费成人深夜小野草| 欧美精选午夜久久久乱码6080| 亚洲色图在线播放| 成人av在线播放网站| 国产精品午夜久久| 国产成人免费在线观看不卡| 久久午夜免费电影| 国产一区二区三区免费在线观看| 欧美v日韩v国产v| 美国十次了思思久久精品导航| 91精品国产欧美一区二区| 三级久久三级久久| 制服.丝袜.亚洲.中文.综合| 天天色综合天天| 日韩欧美中文字幕一区| 美女视频第一区二区三区免费观看网站 | 欧美激情综合在线| 成人动漫av在线| 国产精品色在线观看| 99精品久久免费看蜜臀剧情介绍| 日韩毛片精品高清免费| 日本韩国一区二区三区| 亚洲一区二区高清| 欧美肥妇free| 九九视频精品免费| 久久精品免视看| av一二三不卡影片| 一级女性全黄久久生活片免费| 在线视频一区二区三区| 日韩精品视频网| 337p粉嫩大胆噜噜噜噜噜91av| 国产乱码精品一区二区三区av | 国产精品国产三级国产a| 91视频观看视频| 亚洲aaa精品| 26uuu色噜噜精品一区| 成人一级黄色片| 亚洲一级片在线观看| 91精品国产高清一区二区三区| 精品在线观看视频| 亚洲视频一二三区| 欧美精品三级日韩久久| 国产一区二区三区在线观看免费视频 | 一区二区三区免费网站| 欧美人妇做爰xxxⅹ性高电影| 蜜臀a∨国产成人精品| 日本一区二区三区免费乱视频| 色婷婷av一区二区三区gif| 日本不卡的三区四区五区| 久久精品人人做人人爽97| 在线一区二区三区| 久久成人精品无人区|