Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Sql Server Native Client использует термин источника данных для набора интерфейсов OLE DB, используемых для установления связи с хранилищем данных, например SQL Server. Создание экземпляра объекта источника данных поставщика является первой задачей потребителя собственного клиента SQL Server.
Каждый поставщик OLE DB объявляет идентификатор класса (CLSID) для себя. CLSID для поставщика OLE DB для собственного клиента SQL Server — это GUID C/C++ CLSID_SQLNCLI10 (символ SQLNCLI_CLSID будет разрешать правильный прогид в файле sqlncli.h, на который вы ссылаетесь). С помощью CLSID потребитель использует функцию OLE CoCreateInstance для создания экземпляра объекта источника данных.
Sql Server Native Client — это сервер внутрипроцессного сервера. Экземпляры объектов поставщика OLE DB собственного клиента SQL Server создаются с помощью макроса CLSCTX_INPROC_SERVER для указания контекста исполняемого файла.
Объект источника данных поставщика OLE DB собственного клиента SQL Server предоставляет интерфейсы инициализации OLE DB, позволяющие потребителю подключаться к существующим базам данных SQL Server.
Каждое подключение, сделанное через поставщик OLE DB собственного клиента SQL Server, автоматически задает следующие параметры:
SET ANSI_WARNINGS ON
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET ANSI_NULL_DFLT_ON ON
SET QUOTED_IDENTIFIER ON
SET CONCAT_OF_NULL_YIELDS_NULL ON
В этом примере используется макрос идентификатора класса для создания объекта источника данных поставщика OLE DB собственного клиента SQL Server и получения ссылки на его интерфейс IDBInitialize .
IDBInitialize* pIDBInitialize;
HRESULT hr;
hr = CoCreateInstance(CLSID_SQLNCLI10, NULL, CLSCTX_INPROC_SERVER,
IID_IDBInitialize, (void**) &pIDBInitialize);
if (SUCCEEDED(hr))
{
// Perform necessary processing with the interface.
pIDBInitialize->Uninitialize();
pIDBInitialize->Release();
}
else
{
// Display error from CoCreateInstance.
}
При успешном создании экземпляра объекта источника данных поставщика данных OLE DB собственного клиента SQL Server потребитель может продолжить, инициализировав источник данных и создав сеансы. Сеансы OLE DB представляют интерфейсы, которые позволяют получать доступ к данным и манипулировать ими.
Поставщик OLE DB собственного клиента SQL Server выполняет первое подключение к указанному экземпляру SQL Server в рамках успешной инициализации источника данных. Подключение сохраняется до тех пор, пока ссылка сохраняется в любом интерфейсе инициализации источника данных или до вызова метода IDBInitialize::Uninitialize .