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

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

?? adotrandlg.cpp

?? 在ADO中使用事務處理,很好的示例代碼.
?? CPP
字號:
// ADOTranDlg.cpp : implementation file
//

#include "stdafx.h"
#include "ADOTran.h"
#include "ADOTranDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CADOTranDlg dialog

CADOTranDlg::CADOTranDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CADOTranDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CADOTranDlg)
	m_CNO = _T("");
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CADOTranDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CADOTranDlg)
	DDX_Control(pDX, IDC_LIST1, m_ctlList);
	DDX_Text(pDX, IDC_EDIT2, m_CNO);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CADOTranDlg, CDialog)
	//{{AFX_MSG_MAP(CADOTranDlg)
	ON_WM_SYSCOMMAND()
	ON_WM_PAINT()
	ON_WM_QUERYDRAGICON()
	ON_BN_CLICKED(IDC_MODIFY, OnModify)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CADOTranDlg message handlers

BOOL CADOTranDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Add "About..." menu item to system menu.

	// IDM_ABOUTBOX must be in the system command range.
	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
	ASSERT(IDM_ABOUTBOX < 0xF000);

	CMenu* pSysMenu = GetSystemMenu(FALSE);
	if (pSysMenu != NULL)
	{
		CString strAboutMenu;
		strAboutMenu.LoadString(IDS_ABOUTBOX);
		if (!strAboutMenu.IsEmpty())
		{
			pSysMenu->AppendMenu(MF_SEPARATOR);
			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
		}
	}

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	// TODO: Add extra initialization here
		::CoInitialize(NULL); 										//初始化COM環境
	HRESULT hr; 
	try
	{
		hr=m_pConnection.CreateInstance(__uuidof(Connection));
		if(SUCCEEDED(hr))
		{
			m_pConnection->ConnectionString="File Name=LinkDatabase.udl";
			m_pConnection->ConnectionTimeout=20;//等待連接的時間為20s
			hr=m_pConnection->Open("","","",adConnectUnspecified);
			if(FAILED(hr))
			{
				AfxMessageBox("打開數據庫失敗!");
				return false;
			}
		}
		else
		{
			AfxMessageBox("創建連接對象失敗!");
			return false;
		}
	}
	catch(_com_error e)
	{
		AfxMessageBox("數據庫連接失敗!");
		return FALSE;
	}
	return TRUE;  // return TRUE  unless you set the focus to a control
}

void CADOTranDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
	{
		CAboutDlg dlgAbout;
		dlgAbout.DoModal();
	}
	else
	{
		CDialog::OnSysCommand(nID, lParam);
	}
}

// If you add a minimize button to your dialog, you will need the code below
//  to draw the icon.  For MFC applications using the document/view model,
//  this is automatically done for you by the framework.

void CADOTranDlg::OnPaint() 
{
	if (IsIconic())
	{
		CPaintDC dc(this); // device context for painting

		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

		// Center icon in client rectangle
		int cxIcon = GetSystemMetrics(SM_CXICON);
		int cyIcon = GetSystemMetrics(SM_CYICON);
		CRect rect;
		GetClientRect(&rect);
		int x = (rect.Width() - cxIcon + 1) / 2;
		int y = (rect.Height() - cyIcon + 1) / 2;

		// Draw the icon
		dc.DrawIcon(x, y, m_hIcon);
	}
	else
	{
		CDialog::OnPaint();
	}
}

// The system calls this to obtain the cursor to display while the user drags
//  the minimized window.
HCURSOR CADOTranDlg::OnQueryDragIcon()
{
	return (HCURSOR) m_hIcon;
}

void CADOTranDlg::OnModify() 
{
	// TODO: Add your control notification handler code here
	UpdateData(true);
	m_ctlList.ResetContent();//清空列表框
	m_pRecordset.CreateInstance(__uuidof(Recordset));
	_variant_t RecordsAffected; 
	CString vSQL;
	vSQL.Format("update COURSE set CNO='%s' where CNO='C04'",m_CNO);
	try
	{
		m_pConnection->BeginTrans();//開始事務
		m_pConnection->Execute(_bstr_t(vSQL),&RecordsAffected,adCmdText);//更新COURSE表
		vSQL.Format("update SC set CNO='%s' where CNO='C04'",m_CNO);
		m_pConnection->Execute(_bstr_t(vSQL),&RecordsAffected,adCmdText);//更新SC表
		m_pConnection->CommitTrans();//提交事務	
	}
	catch(_com_error e)
	{
		m_pConnection->RollbackTrans();//回滾事務
		AfxMessageBox(e.ErrorMessage());
	}
	vSQL.Format("SELECT * FROM SC WHERE CNO='%s'",m_CNO);
	m_pRecordset=m_pConnection->Execute(_bstr_t(vSQL),&RecordsAffected,adCmdText); 
	if((m_pRecordset->BOF)&&(m_pRecordset->adoEOF))
	{
		AfxMessageBox("得到的記錄集為空!");
		m_pRecordset->Close();
		return;
	}
	while(VARIANT_FALSE ==m_pRecordset->adoEOF)//將得到的記錄集添加到列表框中
	{
		_variant_t vFieldValue;
		CString strID,strCNO,strGrade;
		vFieldValue = m_pRecordset->GetCollect("SNO");
		strID = (char*)_bstr_t(vFieldValue);
		vFieldValue.Clear();
		vFieldValue = m_pRecordset->GetCollect("CNO");
		strCNO = (char*)_bstr_t(vFieldValue);
		vFieldValue.Clear();
		vFieldValue = m_pRecordset->GetCollect("GRADE");
		strGrade = (char*)_bstr_t(vFieldValue);
		vFieldValue.Clear();
		CString strItem;
		strItem.Format("學號:%s課程號:%s成績:%s",strID,strCNO,strGrade);
		m_ctlList.AddString(strItem);
		m_pRecordset->MoveNext();//下一條記錄
		}
	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
自拍偷拍亚洲综合| 久久久www成人免费无遮挡大片 | 日韩欧美电影一二三| 天天亚洲美女在线视频| 欧美日韩亚洲高清一区二区| 亚洲一卡二卡三卡四卡五卡| 欧美乱熟臀69xxxxxx| 日韩二区三区四区| 欧美v日韩v国产v| 成人午夜又粗又硬又大| 亚洲免费在线播放| 欧美放荡的少妇| 国产在线乱码一区二区三区| 国产精品素人一区二区| 色婷婷av一区二区三区之一色屋| 亚洲bt欧美bt精品| 精品国产91洋老外米糕| 不卡欧美aaaaa| 日韩主播视频在线| 久久久噜噜噜久噜久久综合| 不卡免费追剧大全电视剧网站| 亚洲同性gay激情无套| 精品视频在线视频| 国内成人精品2018免费看| 中文字幕佐山爱一区二区免费| 欧美日韩三级一区| 国产成人丝袜美腿| 亚洲摸摸操操av| 欧美成人a∨高清免费观看| 成人国产在线观看| 五月天激情综合| 国产日韩影视精品| 欧美日韩高清不卡| 国产成人自拍网| 午夜精品久久久久久久| 久久久久九九视频| 欧美日韩在线电影| 国产美女av一区二区三区| 亚洲一区在线观看视频| 久久精品视频免费| 欧美日韩国产综合草草| 国产.欧美.日韩| 热久久免费视频| 亚洲视频精选在线| 久久久精品人体av艺术| 欧美疯狂性受xxxxx喷水图片| 成人一区二区三区在线观看 | 国产精品三级av| 91精品国产色综合久久久蜜香臀| 国产1区2区3区精品美女| 免费观看成人av| 亚洲自拍欧美精品| 久久精品一二三| 欧美一区二区在线观看| 在线看国产一区| 成人av综合在线| 国产精品亚洲午夜一区二区三区| 亚洲一区av在线| 亚洲激情av在线| 国产精品私房写真福利视频| 精品福利一区二区三区免费视频| 在线观看国产精品网站| aaa亚洲精品| 99热在这里有精品免费| 国产精品一区在线观看你懂的| 日本aⅴ亚洲精品中文乱码| 亚洲福利视频一区二区| 亚洲图片有声小说| 亚洲自拍偷拍九九九| 亚洲美腿欧美偷拍| 亚洲三级在线观看| 日韩毛片一二三区| 1024成人网色www| 国产精品国产精品国产专区不片| 久久久精品综合| 国产婷婷精品av在线| 久久午夜羞羞影院免费观看| 亚洲精品在线一区二区| 亚洲精品一区二区三区99| 欧美一级理论片| 日韩精品一区二区三区视频在线观看 | 欧美色网站导航| 在线观看区一区二| 欧美日韩一区中文字幕| 欧美日韩精品免费观看视频| 欧美人与z0zoxxxx视频| 在线观看91精品国产麻豆| 欧美一区二区三区啪啪| 日韩免费高清视频| 久久九九99视频| 日韩一区日韩二区| 亚洲午夜在线电影| 免费视频最近日韩| 国产一区二区美女| 成人国产精品免费观看视频| 色悠久久久久综合欧美99| 欧美日韩久久久久久| 欧美一区二区精品| 久久精品男人天堂av| 亚洲色图在线视频| 亚洲成人一区二区在线观看| 另类成人小视频在线| 国产成人在线色| 色吊一区二区三区| 欧美变态tickling挠脚心| 中文字幕成人av| 性欧美疯狂xxxxbbbb| 蜜桃精品视频在线| 成人开心网精品视频| 欧美另类高清zo欧美| 精品国产乱码久久久久久老虎| 国产精品视频第一区| 一区二区成人在线观看| 极品销魂美女一区二区三区| aaa国产一区| 日韩视频免费直播| 国产精品久久久久天堂| 天天色综合成人网| 成人精品在线视频观看| 欧美精品一卡两卡| 欧美经典一区二区| 五月天丁香久久| gogo大胆日本视频一区| 日韩一级黄色大片| 成人免费在线视频观看| 麻豆国产91在线播放| 91视频免费看| 久久久久久久综合日本| 丝袜亚洲另类欧美| yourporn久久国产精品| 日韩你懂的在线观看| 亚洲精品国产高清久久伦理二区| 激情六月婷婷久久| 欧美日韩免费不卡视频一区二区三区| 欧美国产欧美亚州国产日韩mv天天看完整 | 久久蜜桃一区二区| 午夜激情综合网| av资源站一区| 久久综合国产精品| 日本不卡中文字幕| 欧美在线一区二区| 自拍偷拍亚洲综合| 国产v日产∨综合v精品视频| 欧美福利一区二区| 亚洲小说春色综合另类电影| 成人h动漫精品一区二区| 久久影视一区二区| 免费观看一级特黄欧美大片| 欧美日韩精品系列| 一区二区成人在线观看| 色婷婷国产精品久久包臀| 中文一区二区在线观看| 国产精品夜夜爽| 久久久亚洲高清| 精品亚洲欧美一区| 欧美岛国在线观看| 日本不卡视频在线| 91精品国产91综合久久蜜臀| 亚洲五月六月丁香激情| 欧美性猛交xxxx乱大交退制版 | 欧美精品一二三| 伊人开心综合网| 99久久精品国产导航| 国产精品家庭影院| a4yy欧美一区二区三区| 国产精品传媒入口麻豆| av成人免费在线观看| 亚洲日本在线观看| 色屁屁一区二区| 一区二区视频在线| 在线视频欧美区| 亚洲二区在线视频| 欧美日韩一区二区三区在线| 午夜av区久久| 91麻豆精品国产综合久久久久久| 午夜精品福利视频网站| 日韩一区二区在线免费观看| 热久久久久久久| xnxx国产精品| 99综合影院在线| 亚洲精品中文字幕在线观看| 欧美在线看片a免费观看| 亚洲伊人伊色伊影伊综合网| 欧美二区乱c少妇| 国产真实乱对白精彩久久| 久久人人97超碰com| 丁香一区二区三区| 亚洲美女一区二区三区| 欧美性淫爽ww久久久久无| 奇米一区二区三区av| 26uuu亚洲| 99re在线精品| 青娱乐精品视频| 国产精品三级av| 欧美日韩中文字幕一区| 国产一区二区电影| 国产精品福利电影一区二区三区四区| 91国在线观看| 国产自产v一区二区三区c| 亚洲人一二三区|