資源簡介
演示了如何VS2008的MFC程序通過ADO連接到SQL SERVER2008上,并且進行插入操作,相關博客請看:http://blog.csdn.net/seamanjt/article/details/28493845
代碼片段和文件信息
#include?“StdAfx.h“
#include?“ADOConn.h“
ADOConn::ADOConn(void)
{
}
ADOConn::~ADOConn(void)
{
}
//?初始化—連接數據庫
void?ADOConn::OnInitADOConn()
{
//?初始化OLE/COM庫環境
::CoInitialize(NULL);
try
{
//?創建Connection對象
m_pConnection.CreateInstance(“ADODB.Connection“);
//?設置連接字符串,必須是BSTR型或者_bstr_t類型
_bstr_t?strConnect?=?“Provider=SQLOLEDB;?Server=.;Database=Student;?uid=sa;?pwd=admin;“;
m_pConnection->Open(strConnect““““adModeUnknown);
}
//?捕捉異常
catch(_com_error?e)
{
//?顯示錯誤信息
AfxMessageBox(e.Description());
}
}
_RecordsetPtr&?ADOConn::GetRecordSet(_bstr_t?bstrSQL)
{
try
{
//連接數據庫,如果connection為空則重新連接
if(m_pConnection==NULL)
OnInitADOConn();
//創建記錄集對象
m_pRecordset.CreateInstance(__uuidof(Recordset));
//取得表中的記錄
m_pRecordset->Open(bstrSQLm_pConnection.GetInterfacePtr()
adOpenDynamicadLockOptimisticadCmdText);
}
catch(_com_error?e)
{
e.Description();
}
//返回記錄集
return?m_pRecordset;
}
//?執行SQL語句,Insert?Update?_variant_t
BOOL?ADOConn::ExecuteSQL(_bstr_t?bstrSQL)
{
//?_variant_t?RecordsAffected;
try
{
//?是否已經連接數據庫
if(m_pConnection?==?NULL)
OnInitADOConn();
//?Connection對象的Execute方法:(_bstr_t?CommandText
//?VARIANT?*?RecordsAffected?long?Options?)
//?其中CommandText是命令字串,通常是SQL命令。
//?參數RecordsAffected是操作完成后所影響的行數
//?參數Options表示CommandText的類型:adCmdText-文本命令;adCmdTable-表名
//?adCmdProc-存儲過程;adCmdUnknown-未知
m_pConnection->Execute(bstrSQLNULLadCmdText);
return?true;
}
catch(_com_error?e)
{
AfxMessageBox(e.Description());
return?false;
}
}
void?ADOConn::ExitConnect()
{
//?關閉記錄集和連接
if?(m_pRecordset?!=?NULL)
m_pRecordset->Close();
m_pConnection->Close();
//?釋放環境
::CoUninitialize();
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1930??2014-06-04?23:36??ADOTEST\ADOTEST\ADOConn.cpp
?????文件????????450??2014-06-04?10:44??ADOTEST\ADOTEST\ADOConn.h
?????文件??????42616??2014-06-04?10:37??ADOTEST\ADOTEST\ADOTEST.APS
?????文件???????1660??2014-06-04?10:37??ADOTEST\ADOTEST\ADOTEST.cpp
?????文件????????447??2014-06-04?10:37??ADOTEST\ADOTEST\ADOTEST.h
?????文件???????4830??2014-06-04?10:37??ADOTEST\ADOTEST\ADOTEST.rc
?????文件???????5541??2014-06-04?11:14??ADOTEST\ADOTEST\ADOTEST.vcproj
?????文件???????1417??2014-06-04?23:40??ADOTEST\ADOTEST\ADOTEST.vcproj.seamanj-PC.seamanj.user
?????文件???????3123??2014-06-04?11:25??ADOTEST\ADOTEST\ADOTESTDlg.cpp
?????文件????????563??2014-06-04?10:37??ADOTEST\ADOTEST\ADOTESTDlg.h
?????文件??????67422??2014-06-04?11:31??ADOTEST\ADOTEST\Debug\ADOConn.obj
?????文件???????1196??2014-06-04?10:37??ADOTEST\ADOTEST\Debug\ADOTEST.exe.em
?????文件???????1260??2014-06-04?10:37??ADOTEST\ADOTEST\Debug\ADOTEST.exe.em
?????文件???????1120??2014-06-04?11:31??ADOTEST\ADOTEST\Debug\ADOTEST.exe.intermediate.manifest
?????文件??????17613??2014-06-04?11:14??ADOTEST\ADOTEST\Debug\ADOTEST.obj
?????文件???28770304??2014-06-04?11:14??ADOTEST\ADOTEST\Debug\ADOTEST.pch
?????文件??????23364??2014-06-04?10:37??ADOTEST\ADOTEST\Debug\ADOTEST.res
?????文件??????44102??2014-06-04?11:26??ADOTEST\ADOTEST\Debug\ADOTESTDlg.obj
?????文件???????6052??2014-06-04?11:31??ADOTEST\ADOTEST\Debug\BuildLog.htm
?????文件?????170807??2012-06-06?13:05??ADOTEST\ADOTEST\Debug\msado15.tlh
?????文件?????148879??2012-06-06?13:05??ADOTEST\ADOTEST\Debug\msado15.tli
?????文件?????????65??2014-06-04?11:31??ADOTEST\ADOTEST\Debug\mt.dep
?????文件?????489422??2014-06-04?11:14??ADOTEST\ADOTEST\Debug\stdafx.obj
?????文件?????961536??2014-06-04?11:31??ADOTEST\ADOTEST\Debug\vc90.idb
?????文件????2314240??2014-06-04?11:31??ADOTEST\ADOTEST\Debug\vc90.pdb
?????文件???????2891??2014-06-04?10:37??ADOTEST\ADOTEST\ReadMe.txt
????.......?????21630??2003-07-24?09:52??ADOTEST\ADOTEST\res\ADOTEST.ico
?????文件????????363??2014-06-04?10:37??ADOTEST\ADOTEST\res\ADOTEST.rc2
?????文件????????520??2014-06-04?10:37??ADOTEST\ADOTEST\Resource.h
?????文件????????138??2014-06-04?10:37??ADOTEST\ADOTEST\stdafx.cpp
............此處省略15個文件信息
評論
共有 條評論