Utilisation des fichiers bibliothèques et de l'en-tête SQL Server Native Client
Les fichiers bibliothèque et d'en-tête SQL Server Native Client sont installés avec SQL 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. Pour plus d'informations sur l'installation et la redistribution de SQL Server Native Client, consultez Installation de SQL Server Native Client.
Les fichiers bibliothèque et d'en-tête SQL Server Native Client sont installés à l'emplacement suivant :
%PROGRAM FILES%\Microsoft SQL Server\110\SDK
Le fichier d'en-tête SQL Server Native Client (sqlncli.h) peut être utilisé pour ajouter la fonctionnalité d'accès aux données SQL Server Native Client à vos applications personnalisées. Le fichier d'en-tête SQL 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 2005.
En plus du fichier d'en-tête SQL 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 Server pour ODBC.
Le fichier d'en-tête SQL 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 Server inclus avec MDAC) ou les symboles pour la fonctionnalité XML (non prise en charge par SQL Server Native Client).
Les applications ODBC ne peuvent pas faire référence à l'en-tête SQL Server Native Client (sqlncli.h) et à odbcss.h dans le même programme. Même si vous n'utilisez aucune des fonctionnalités introduites dans SQL Server 2005, le fichier d'en-tête SQL Server Native Client fonctionnera à la place du fichier odbcss.h plus ancien.
Les applications OLE DB qui utilisent le fournisseur OLE DB SQL Server Native Client doivent uniquement référencer sqlncli.h. Si une application utilise MDAC (SQLOLEDB) et le fournisseur OLE DB SQL 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.
Utilisation du fichier d'en-tête SQL Server Native Client
Pour utiliser le fichier d'en-tête SQL Server Native Client, vous devez utiliser une instruction include dans votre code de programmation C/C++. Les sections suivantes décrivent comment y parvenir pour les applications OLE DB et ODBC.
[!REMARQUE]
Les fichiers bibliothèque et d'en-tête SQL Server Native Client ne peuvent être compilés qu'à l'aide de Visual Studio C++ 2002 ou version ultérieure.
OLE DB
Pour utiliser le fichier d'en-tête SQL Server Native Client dans une application OLE DB, à l'aide des lignes de code de programmation suivantes :
#define _SQLNCLI_OLEDB_
include "sqlncli.h";
[!REMARQUE]
La première ligne de code ci-dessus doit être omise si les API OLE DB et ODBC sont utilisées par l'application. De plus, si l'application possède une instruction include pour sqloledb.h, l'instruction include pour sqlncli.h doit venir après elle.
Lorsque vous créez une connexion à une source de données via SQL Server Native Client, utilisez "SQLNCLI11" comme chaîne du nom de fournisseur.
ODBC
Pour utiliser le fichier d'en-tête SQL Server Native Client dans une application ODBC, à l'aide des lignes de code de programmation suivantes :
#define _SQLNCLI_ODBC_
include "sqlncli.h";
[!REMARQUE]
La première ligne de code ci-dessus doit être omise si les API OLE DB et ODBC sont utilisées par l'application. De plus, si l'application possède une instruction #include pour odbcss.h, elle doit être supprimée.
Lors de la création d'une connexion à une source de données via SQL Server Native Client, utilisez "SQL Server Native Client 11.0" comme chaîne du nom de pilote.
Noms des composants et propriétés par version
Propriété |
SQL Server Native Client SQL Server 2005 |
SQL Server Native Client 10.0 SQL Server 2008 |
SQL Server Native Client 11.0 SQL Server 2012 |
MDAC |
---|---|---|---|---|
Nom du pilote ODBC |
SQL Native Client |
SQL Server Native Client 10.0 |
SQL Server Native Client 11.0 |
SQL Server |
Nom du fichier d'en-tête ODBC |
Sqlncli.h |
Sqlncli.h |
Sqlncli.h |
Odbcss.h |
DLL du pilote ODBC |
Sqlncli.dll |
Sqlncl10.dll |
Sqlncl11.dll |
sqlsrv32.dll |
Fichier bibliothèque ODBC pour les API BCP |
Sqlncli.lib |
Sqlncli10.lib |
Sqlncli11.lib |
Odbcbcp.lib |
DLL ODBC pour les API BCP |
Sqlncli.dll |
Sqlncli10.dll |
Sqlncli11.dll |
Odbcbcp.dll |
PROGID pour OLE DB |
SQLNCLI |
SQLNCLI10 |
SQLNCLI11 |
SQLOLEDB |
Nom du fichier d'en-tête OLE DB |
Sqlncli.h |
Sqlncli.h |
Sqlncli.h |
Sqloledb.h |
DLL du fournisseur OLE DB |
Sqlncli.dll |
Sqlncli10.dll |
Sqlncli11.dll |
Sqloledb.dll |
sqlncli.h prend en charge plusieurs versions de SQL Server Native Client via la macro SQLNCLI_VER. Par défaut, SQLNCLI_VER a comme valeur la version la plus récente de SQL 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.
Liaison statique et fonctions BCP
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.
Par exemple, si vous compilez une application à l'aide de SQL 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.
Pour plus d'informations, consultez Exécution Exécution d'opérations de copie en bloc.