Article ID: 198486
Article Last Modified on 1/11/2006
SELECT ProductID, ProductName FROM Products WHERE CONTAINS(ProductName,'spread NEAR () Boysenberry')The following sample code is an OLE DB Consumer Application that uses OLE DB Consumer Template classes.
#include <iostream>
using namespace std ;
#include <atlbase.h>
#include <atlimpl.cpp> // atlimpl is obsolete in versions later than 6.0
CComModule _Module;
#define DBINITCONSTANTS
#include <atlcom.h>
#include <atldbcli.h>
#include <msdaguid.h>
//Accessor Class.
class CProductsAccessor
{
public:
LONG m_ProductID;
TCHAR m_ProductName[41];
//output binding map.
BEGIN_COLUMN_MAP(CProductsAccessor)
COLUMN_ENTRY(1, m_ProductID)
COLUMN_ENTRY(2, m_ProductName)
END_COLUMN_MAP()
};
void main()
{
HRESULT hr ;
//Initialize COM.
hr = CoInitialize(NULL);
CDataSource connection ;
CSession session ;
CCommand<CAccessor<CProductsAccessor> > product ;
// ===================================================
// Setting OLE DB Initialization Properties
// ===================================================
CDBPropSet propset(DBPROPSET_DBINIT);
propset.AddProperty(DBPROP_INIT_DATASOURCE, L"<SQL Server Name>");
propset.AddProperty(DBPROP_INIT_CATALOG, L"NorthWind");
propset.AddProperty(DBPROP_AUTH_USERID, L"<User ID>");
propset.AddProperty(DBPROP_AUTH_PASSWORD, L"<Password>");
hr = connection.Open("SQLOLEDB", &propset);
// Open a session.
hr = session.Open(connection) ;
hr = product.Open(session, "SELECT ProductID, ProductName FROM
Products WHERE CONTAINS(ProductName,'spread NEAR Boysenberry')");
//Get data from the rowset.
while(product.MoveNext() == S_OK)
{
cout << product.m_ProductID << " ";
cout << product.m_ProductName << endl ;
}
}
190959 PRB: OLE DB Consumer Template Wizard requires ATL project
Additional query words: kbDSupport
Keywords: kbhowto kbdatabase kbdtl KB198486