“ _com_error”无法使用ADO C ++打开SQL Server

时间:2019-03-25 08:30:06

标签: c++ sql-server database-connection ado

我正在尝试使用ADO将C ++项目连接到SQL Server。它在检查第一个“ hr”时运行良好,但是在第二个“ if”语句中打开数据库时却遇到错误,它说“ Microsoft C++ exception: _com_error at memory location”。

我想知道问题是什么,如何打开数据库?还是有另一种打开数据库的方法?

我已经尝试将_ConnectionPtr pConnection = NULL;更改为此_ConnectionPtr pConnection("ADODB.Connection")。这是我的代码:

HRESULT hr = S_OK;

_ConnectionPtr pConnection = NULL;
_RecordsetPtr   pRecordset = NULL;

_bstr_t strCon("Data Source=...\\SQLEXPRESS;Initial Catalog=TestDB;Integrated Security=True");

hr = pConnection.CreateInstance((__uuidof(Connection)));
if (FAILED(hr))
{
    printf("Error instantiating Connection objectn");
}

//Open the SQL Server connection
hr = pConnection->Open(strCon, "", "", 0);
if (FAILED(hr))
{
    printf("Error Opening Database object using ADO _ConnectionPtr n");
}

0 个答案:

没有答案