_ RecordsetPtr m_pRst / /建立記錄
_ CommandPtr m_pCmd; / /建立命令
的CoInitialize(NULL); BR /> m_pConn新_ConnectionPtr。 (__uuidof(連接))/ /建立連接
m_pRst以新_ RecordsetPtr。(__ uuidof(記錄))/ /建立記錄集
m_pCmd = _ CommandPtr(__ uuidof(命令));
嘗試
{
m_pConn的ConnectionString = _T(“驅動程序= {SQL服務器,服務器= IP地址的DataSource =數據庫名; UID =連接到數據庫的用戶名稱; PWD =密碼“);
m_pConn - >”打開“(_T(”“),_T(”“),_T(”“),adConnectUnspecified);
}
的catch(_com_error E)
{
CString的錯誤消息“
errormessage.Format(_T(”無法連接到數據庫 - >:%s按任意鍵返回!“),e.ErrorMessage() );
輸出(錯誤消息);
getchar函數();
回報DB_ERROE;
}
/ / / ************
str.Format *連接的數據庫
手術臺
m_pCmd - > put_ActiveConnection(_variant_t((IDispatch的*)m_pConn)); CString的STR(“選擇* from表名,將參數1 =“%d”和參數2 ='D'“,值參數1,參數2的值);
m_pCmd的CommandText = str.GetBuffer(中)
m_pRst = m_pCmd - >執行(NULL,NULL,了adCmdText);
同時(!m_pRst - > adoEOF)
{
_variant_t無功;
VAR = m_pRst - > GetCollect(_T(“設備1”));
如果(var.vt!= VT_NULL)
{
設備1ID = var.intVal;
} VAR = m_pRst - > GetCollect(_T(“設備2”));
(var.vt VT_NULL)
{
設備2ID = var.intVal;
>}
設備,設備...
m_pRst的MoveNext();
}
m_pRst - >關閉();