Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
SQL Server Native Client verwendet die Ausdrucksdatenquelle für die Gruppe von OLE DB-Schnittstellen, die zum Herstellen einer Verknüpfung mit einem Datenspeicher verwendet werden, z. B. SQL Server. Das Erstellen einer Instanz des Datenquellenobjekts des Anbieters ist die erste Aufgabe eines SQL Server Native Client-Consumers.
Jeder OLE DB-Anbieter deklariert einen Klassenbezeichner (CLSID) für sich selbst. Die CLSID für den OLE DB-Anbieter des SQL Server Native Client ist die C/C++-GUID CLSID_SQLNCLI10 (das Symbol SQLNCLI_CLSID wird in der datei sqlncli.h, auf die Sie verweisen, in den richtigen Progid aufgelöst). Mit der CLSID verwendet der Consumer die OLE CoCreateInstance-Funktion , um eine Instanz des Datenquellenobjekts herzustellen.
SQL Server Native Client ist ein prozessinterner Server. Instanzen von SQL Server Native Client OLE DB-Anbieterobjekten werden mithilfe des CLSCTX_INPROC_SERVER Makros erstellt, um den ausführbaren Kontext anzugeben.
Das OLE DB-Anbieterquellobjekt des SQL Server Native Client macht die OLE DB-Initialisierungsschnittstellen verfügbar, mit denen der Consumer eine Verbindung mit vorhandenen SQL Server-Datenbanken herstellen kann.
Jede Verbindung, die über den OLE DB-Anbieter des SQL Server Native Client hergestellt wird, legt diese Optionen automatisch fest:
SET ANSI_WARNINGS EIN
SET ANSI_NULLS EIN
SET ANSI_PADDING EIN
SET ANSI_NULL_DFLT_ON EIN
SET QUOTED_IDENTIFIER EIN
SET CONCAT_OF_NULL_YIELDS_NULL EIN
In diesem Beispiel wird das Klassenbezeichnermakro verwendet, um ein OLE DB-Datenquellenobjekt des SQL Server Native Client-Anbieters zu erstellen und einen Verweis auf die IDBInitialize-Schnittstelle abzurufen.
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.
}
Mit erfolgreicher Erstellung einer Instanz eines OLE DB-Anbieterobjekts des SQL Server Native Client-Anbieters kann die Consumeranwendung fortfahren, indem sie die Datenquelle initialisieren und Sitzungen erstellen. OLE DB-Sitzungen stellen die Schnittstellen dar, die den Datenzugriff und die Manipulation ermöglichen.
Der OLE DB-Anbieter von SQL Server Native Client stellt die erste Verbindung zu einer angegebenen Instanz von SQL Server als Teil einer erfolgreichen Initialisierung der Datenquelle dar. Die Verbindung wird beibehalten, solange ein Verweis auf jede Schnittstelle für die Datenquelleninitialisierung beibehalten wird, oder bis die IDBInitialize::Uninitialize-Methode aufgerufen wird.