高手帮忙看看源程序,万分感谢,程序运行说无效指针,在pConnection->Open这句出错
#include <iostream>
#include "stdafx.h"
int main()
{
_ConnectionPtr pConnection;
_RecordsetPtr pRecordset;
_variant_t TheValue;
if(!AfxOleInit())
{
std::cout<<"COM Init error\n";
return -1;
}
pConnection.CreateInstance(__uuidof(Connection));
pRecordset.CreateInstance (__uuidof(Recordset));
try
{
pConnection->Open ("driver = {SQL Server};Server = 127.0.0.1;DATABASE = master;UID = sa;PWD = viton","","",adModeUnknown); pRecordset->Open ("select name from sysdatabase",_variant_t((IDispatch*)pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
while(!pRecordset->adoEOF)
{
TheValue = pRecordset->GetCollect ("name");
if(TheValue.vt != VT_NULL)
std::cout<<(char*)_bstr_t(TheValue)<<'\n';
pRecordset->MoveNext ();
}
}catch(_com_error &e)
{
std::cout<<e.ErrorMessage ()<<'\n';
return -1;
}
pRecordset->Close();
pConnection->Close ();
return 0;
}
#include "stdafx.h"
int main()
{
_ConnectionPtr pConnection;
_RecordsetPtr pRecordset;
_variant_t TheValue;
if(!AfxOleInit())
{
std::cout<<"COM Init error\n";
return -1;
}
pConnection.CreateInstance(__uuidof(Connection));
pRecordset.CreateInstance (__uuidof(Recordset));
try
{
pConnection->Open ("driver = {SQL Server};Server = 127.0.0.1;DATABASE = master;UID = sa;PWD = viton","","",adModeUnknown); pRecordset->Open ("select name from sysdatabase",_variant_t((IDispatch*)pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
while(!pRecordset->adoEOF)
{
TheValue = pRecordset->GetCollect ("name");
if(TheValue.vt != VT_NULL)
std::cout<<(char*)_bstr_t(TheValue)<<'\n';
pRecordset->MoveNext ();
}
}catch(_com_error &e)
{
std::cout<<e.ErrorMessage ()<<'\n';
return -1;
}
pRecordset->Close();
pConnection->Close ();
return 0;
}
...全文
相关推荐
m_pConnection->Execute runtime error
**创建 COM 指针**: - 使用 `_ConnectionPtr pConn(__uuidof(Connection));` 创建数据库连接对象指针。
mfc连接数据总结
```cppm_pConnection.CreateInstance("ADODB.Connection");m_pConnection->Open("Provider=Microsoft.Jet.OLEDB
vc++ADO数据库连接、.pdf
在VC++中,我们通常会创建一个`_ConnectionPtr`类型的智能指针来代表数据库连接对象。
mfc ado指针连接数据库
")); // 创建Connection对象 m_pConnection->Open(szConnectString, _T(""), _T(""), ADODB::adConnectUnspecified
VC中使用ADO操作数据库的方法
(Connection)); if (SUCCEEDED(hr)) { m_pConnection->ConnectionTimeout = 0; hr = m_pConnection->Open( "


数据库
