Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Belangrijk
De SQL Server Native Client (vaak afgekort SNAC) is verwijderd uit SQL Server 2022 (16.x) en SQL Server Management Studio 19 (SSMS). Zowel de SQL Server Native Client OLE DB-provider (SQLNCLI of SQLNCLI11) als de verouderde Microsoft OLE DB-provider voor SQL Server (SQLOLEDB) worden niet aanbevolen voor nieuwe ontwikkeling. Schakel over naar het nieuwe Microsoft OLE DB-stuurprogramma (MSOLEDBSQL) voor SQL Server.
SQL Server Native Client gebruikt de term databron voor de set OLE DB-interfaces die worden gebruikt om een verbinding met een datawinkel tot stand te brengen, zoals SQL Server. Het aanmaken van een instantie van het databronobject van de provider is de eerste taak van een SQL Server Native Client-consument.
Elke OLE DB-provider verklaart een klasse-identificatie (CLSID) voor zichzelf. De CLSID voor de SQL Server Native Client OLE DB-provider is de C/C++ GUID CLSID_SQLNCLI10 (het symbool SQLNCLI_CLSID zal worden opgelost naar het juiste progid in het sqlncli.h-bestand waar je naar verwijst). Met de CLSID gebruikt de consument de OLE CoCreateInstance-functie om een instantie van het databronobject te produceren.
SQL Server Native Client is een server in uitvoering. Instanties van SQL Server Native Client OLE DB provider-objecten worden aangemaakt met behulp van de CLSCTX_INPROC_SERVER macro om de uitvoerbare context aan te geven.
Het SQL Server Native Client OLE DB provider databronobject stelt de OLE DB-initialisatieinterfaces bloot die de consument in staat stellen verbinding te maken met bestaande SQL Server-databases.
Elke verbinding die wordt gemaakt via de SQL Server Native Client OLE DB-provider stelt automatisch deze opties in:
SET ANSI_WARNINGS OP
SET ANSI_NULLS OP
SET ANSI_PADDING OP
SET ANSI_NULL_DFLT_ON OP
SET QUOTED_IDENTIFIER OP
SET CONCAT_OF_NULL_YIELDS_NULL OP
Dit voorbeeld gebruikt de macro van de klasse-identificatie om een SQL Server Native Client OLE DB provider databronobject te creëren en een verwijzing te krijgen naar de IDBInitialize-interface.
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.
}
Met succesvolle creatie van een instantie van een SQL Server Native Client OLE DB provider datasourceobject, kan de consumentenapplicatie doorgaan met het initialiseren van de databron en het aanmaken van sessies. OLE DB-sessies presenteren de interfaces die data-toegang en -manipulatie mogelijk maken.
De SQL Server Native Client OLE DB-provider maakt zijn eerste verbinding met een gespecificeerde instantie van SQL Server als onderdeel van een succesvolle initialisatie van de databron. De verbinding wordt onderhouden zolang er een referentie wordt onderhouden op een databron-initialisatieinterface, of totdat de methode IDBInitialize::Uninitialize wordt aangeroepen.