C++用ADO调用MSSQL超时
在C++中调用一个数据库中要运行2分钟左右的存储过程,差不多30秒左右就返回超时.
但是在EXCEL和控制台运行都没问题..我已经把__ConnectionPtr超时设为永不超时还是这样.
请问是不是还要设__CommandPtr为永不超时?怎么设呢?
if( m_pADOCon == NULL )
{
_snprintf(sz_msg, sizeof(sz_msg) - 1, "%s", "m_pADOCon is null...");
p_MainCwnd->SendMessage(MSG_INFO, 0, (LPARAM)sz_msg);
return FALSE;
}
_snprintf(sz_msg, sizeof(sz_msg) - 1, "Open db server %s", pHost);
p_MainCwnd->SendMessage(MSG_INFO, 0, (LPARAM)sz_msg);
m_pADOCon ->CommandTimeout = 0;
m_pADOCon ->CursorLocation = adUseClient;
HRESULT hr = -1;
char sz_strcon[512] = {0};
_snprintf(sz_strcon, sizeof(sz_strcon) - 1, "Driver={SQL Server};Server=%s;Database=%s;UID=%s;PWD=%s", pHost, pDataName, pLogin, pPsw);
hr = m_pADOCon->Open( _bstr_t(sz_strcon), "", "", adModeUnknown);