Utilisation des fichiers bibliothèques et de l'en-tête SQL Server Native ClientUsing the SQL Server Native Client Header and Library Files

Cette rubrique s’applique à : OuiSQL ServerOuibase de données SQL AzureOuiAzure SQL Data Warehouse Oui Parallel Data WarehouseTHIS TOPIC APPLIES TO: yesSQL ServeryesAzure SQL DatabaseyesAzure SQL Data Warehouse yesParallel Data Warehouse

Les fichiers bibliothèque et d'en-tête SQL ServerSQL Server Native Client sont installés avec SQL ServerSQL Server.The SQL ServerSQL Server Native Client header and library files are installed with SQL ServerSQL Server. Lors du développement d'une application, il importe de copier et d'installer tous les fichiers requis pour le développement sur votre environnement de développement.When developing an application, it is important to copy and install all of the required files for development to your development environment. Pour plus d’informations sur l’installation et la redistribution SQL ServerSQL Server Native Client, consultez l’installation de SQL Server Native Client.For more information about installing and redistributing SQL ServerSQL Server Native Client, see Installing SQL Server Native Client.

Les fichiers bibliothèque et d'en-tête SQL ServerSQL Server Native Client sont installés à l'emplacement suivant :The SQL ServerSQL Server Native Client header and library files are installed in the following location:

%Program Files%\Microsoft SQL Server\110\SDK%PROGRAM FILES%\Microsoft SQL Server\110\SDK

Le fichier d'en-tête SQL ServerSQL Server Native Client (sqlncli.h) peut être utilisé pour ajouter la fonctionnalité d'accès aux données SQL ServerSQL Server Native Client à vos applications personnalisées.The SQL ServerSQL Server Native Client header file (sqlncli.h) can be used to add SQL ServerSQL Server Native Client data access functionality to your custom applications. Le fichier d'en-tête SQL ServerSQL Server Native Client contient l'ensemble des définitions, attributs, propriétés et interfaces nécessaires pour tirer parti des nouvelles fonctionnalités introduites dans SQL Server 2005SQL Server 2005.The SQL ServerSQL Server Native Client header file contains all of the definitions, attributes, properties, and interfaces needed to take advantage of the new features introduced in SQL Server 2005SQL Server 2005.

En plus du fichier d'en-tête SQL ServerSQL Server Native Client, il existe également un fichier bibliothèque sqlncli11.lib qui est la bibliothèque d'exportation pour la fonctionnalité BCP (Bulk Copy Program) SQL ServerSQL Server pour ODBC.In addition to the SQL ServerSQL Server Native Client header file, there is also a sqlncli11.lib library file which is the export library for SQL ServerSQL Server Bulk Copy Program (BCP) functionality for ODBC.

Le fichier d'en-tête SQL ServerSQL Server Native Client offre une compatibilité descendante avec les fichiers d'en-tête sqloledb.h et odbcss.h utilisés avec MDAC (Microsoft Data Access Components), mais ne contient pas les CLSID pour SQLOLEDB (le fournisseur OLE DB pour SQL ServerSQL Server inclus avec MDAC) ou les symboles pour la fonctionnalité XML (non prise en charge par SQL ServerSQL Server Native Client).The SQL ServerSQL Server Native Client header file is backwards compatible with both the sqloledb.h and odbcss.h header files used with Microsoft Data Access Components (MDAC), but does not contain CLSIDs for SQLOLEDB (the OLE DB provider for SQL ServerSQL Server included with MDAC) or symbols for XML functionality (which is not supported by SQL ServerSQL Server Native Client).

Les applications ODBC ne peuvent pas faire référence à l'en-tête SQL ServerSQL Server Native Client (sqlncli.h) et à odbcss.h dans le même programme.ODBC applications cannot reference the SQL ServerSQL Server Native Client header (sqlncli.h) and odbcss.h in the same program. Même si vous n'utilisez aucune des fonctionnalités introduites dans SQL Server 2005SQL Server 2005, le fichier d'en-tête SQL ServerSQL Server Native Client fonctionnera à la place du fichier odbcss.h plus ancien.Even if you are not using any of the features introduced in SQL Server 2005SQL Server 2005, the SQL ServerSQL Server Native Client header file will work in place of the older odbcss.h.

Les applications OLE DB qui utilisent le fournisseur OLE DB SQL ServerSQL Server Native Client doivent uniquement référencer sqlncli.h.OLE DB applications which use the SQL ServerSQL Server Native Client OLE DB provider only need to reference sqlncli.h. Si une application utilise MDAC (SQLOLEDB) et le fournisseur OLE DB SQL ServerSQL Server Native Client, elle peut faire référence à sqloledb.h et à sqlncli.h, mais la référence à sqloledb.h doit être placée en premier.If an application uses both MDAC (SQLOLEDB) and the SQL ServerSQL Server Native Client OLE DB provider, it can reference both sqloledb.h and sqlncli.h, but the reference to sqloledb.h must come first.

Utilisation du fichier d'en-tête SQL Server Native ClientUsing the SQL Server Native Client Header File

Pour utiliser le SQL ServerSQL Server fichier d’en-tête Native Client, vous devez utiliser un incluent instruction dans votre code de programmation C/C++.To use the SQL ServerSQL Server Native Client header file, you must use an include statement within your C/C++ programming code. Les sections suivantes décrivent comment y parvenir pour les applications OLE DB et ODBC.The following sections describe how to do this for both OLE DB and ODBC applications.

Note

Les fichiers bibliothèque et d'en-tête SQL ServerSQL Server Native Client ne peuvent être compilés qu'à l'aide de Visual Studio C++ 2002 ou version ultérieure.The SQL ServerSQL Server Native Client header and library files can only be compiled using Visual Studio C++ 2002 or later.

OLE DBOLE DB

Pour utiliser le fichier d'en-tête SQL ServerSQL Server Native Client dans une application OLE DB, à l'aide des lignes de code de programmation suivantes :To use the SQL ServerSQL Server Native Client header file in an OLE DB application, using the following lines of programming code:

#define _SQLNCLI_OLEDB_  
include "sqlncli.h";  

Note

La première ligne de code ci-dessus doit être omise si les API OLE DB et ODBC sont utilisées par l'application.The first line of code shown above should be omitted if both the OLE DB and ODBC APIs are used by the application. En outre, si l’application possède un incluent instruction pour sqloledb.h, le incluent instruction pour sqlncli.h doit venir après elle.In addition, if the application has an include statement for sqloledb.h, the include statement for sqlncli.h must come after it.

Lorsque vous créez une connexion à une source de données via SQL ServerSQL Server Native Client, utilisez "SQLNCLI11" comme chaîne du nom de fournisseur.When creating a connection to a data source through SQL ServerSQL Server Native Client, use "SQLNCLI11" as the provider name string.

ODBCODBC

Pour utiliser le fichier d'en-tête SQL ServerSQL Server Native Client dans une application ODBC, à l'aide des lignes de code de programmation suivantes :To use the SQL ServerSQL Server Native Client header file in an ODBC application, using the following lines of programming code:

#define _SQLNCLI_ODBC_  
include "sqlncli.h";  

Note

La première ligne de code ci-dessus doit être omise si les API OLE DB et ODBC sont utilisées par l’application.The first line of code shown above should be omitted if both OLE DB and ODBC APIs are used by the application. De plus, si l'application possède une instruction #include pour odbcss.h, elle doit être supprimée.In addition, if the application has an #include statement for odbcss.h, it should be removed.

Lors de la création d'une connexion à une source de données via SQL ServerSQL Server Native Client, utilisez "SQL Server Native Client 11.0" comme chaîne du nom de pilote.When creating a connection to a data source through SQL ServerSQL Server Native Client, use "SQL Server Native Client 11.0" as the driver name string.

Noms des composants et propriétés par versionComponent Names and Properties by Version

PropriétéProperty SQL Server Native ClientSQL Server Native Client

SQL Server 2005SQL Server 2005
SQL Server Native Client 10.0SQL Server Native Client 10.0

SQL Server 2008SQL Server 2008
SQL Server Native Client 11.0SQL Server Native Client 11.0

SQL Server 2017SQL Server 2017
MDACMDAC
Nom du pilote ODBCODBC driver name SQL Native ClientSQL Native Client SQL Server Native Client 10.0SQL Server Native Client 10.0 SQL Server Native Client 11.0SQL Server Native Client 11.0 SQL ServerSQL Server
Nom du fichier d'en-tête ODBCODBC header file name Sqlncli.hSqlncli.h Sqlncli.hSqlncli.h Sqlncli.hSqlncli.h Odbcss.hOdbcss.h
DLL du pilote ODBCODBC driver DLL Sqlncli.dllSqlncli.dll Sqlncl10.dllSqlncl10.dll Sqlncl11.dllSqlncl11.dll sqlsrv32.dllsqlsrv32.dll
Fichier bibliothèque ODBC pour les API BCPODBC lib file for BCP APIs Sqlncli.libSqlncli.lib Sqlncli10.libSqlncli10.lib Sqlncli11.libSqlncli11.lib Odbcbcp.libOdbcbcp.lib
DLL ODBC pour les API BCPODBC DLL for BCP APIs Sqlncli.dllSqlncli.dll Sqlncli10.dllSqlncli10.dll Sqlncli11.dllSqlncli11.dll Odbcbcp.dllOdbcbcp.dll
PROGID pour OLE DBOLE DB PROGID SQLNCLISQLNCLI SQLNCLI10SQLNCLI10 SQLNCLI11SQLNCLI11 SQLOLEDBSQLOLEDB
Nom du fichier d'en-tête OLE DBOLE DB header file name Sqlncli.hSqlncli.h Sqlncli.hSqlncli.h Sqlncli.hSqlncli.h Sqloledb.hSqloledb.h
DLL du fournisseur OLE DBOLE DB provider DLL Sqlncli.dllSqlncli.dll Sqlncli10.dllSqlncli10.dll Sqlncli11.dllSqlncli11.dll Sqloledb.dllSqloledb.dll

sqlncli.h prend en charge plusieurs versions de SQL ServerSQL Server Native Client via la macro SQLNCLI_VER.sqlncli.h supports multiple version of SQL ServerSQL Server Native Client through the SQLNCLI_VER macro. Par défaut, SQLNCLI_VER a comme valeur la version la plus récente de SQL ServerSQL Server Native Client.By default, SQLNCLI_VER defaults to the latest version of SQL ServerSQL Server Native Client. Pour générer une application qui utilise sqlncli10.dll plutôt que sqlncli11.dll, définissez SQLNCLI_VER avec la valeur 10.To build an application that uses sqlncli10.dll rather than sqlncli11.dll, set SQLNCLI_VER to 10.

Liaison statique et fonctions BCPStatic Linking and BCP Functions

Lorsqu'une application utilise des fonctions BCP, il est important pour l'application de spécifier dans la chaîne de connexion le pilote de la même version fourni avec le fichier d'en-tête et la bibliothèque utilisés pour compiler l'application.When an application uses BCP functions, it is important for the application to specify in the connection string the driver from the same version that shipped with the header file and library used to compile the application.

Par exemple, si vous compilez une application à l'aide de SQL ServerSQL Server Native Client, le fichier de bibliothèque associé (sqlncli11.lib) et le fichier d'en-tête (sqlncli.h) à partir de \Program Files\Microsoft SQL Server\110\SDK, veillez à spécifier (en utilisant ODBC comme exemple) « DRIVER={SQL Server Native Client 11.0} » dans la chaîne de connexion.For example, if you compile an application using SQL ServerSQL Server Native Client, and the associated library file (sqlncli11.lib) and header file (sqlncli.h) from \Program Files\Microsoft SQL Server\110\SDK, make sure to specify (using ODBC as an example) "DRIVER={SQL Server Native Client 11.0}" in the connection string.

Pour plus d’informations, consultez exécution effectuant des opérations de copie en bloc.For more information, see Performing Performing Bulk Copy Operations.

Voir aussiSee Also

Génération d’applications avec SQL Server Native ClientBuilding Applications with SQL Server Native Client