Utilizzo dei file di intestazione e della libreria di SQL Server Native Client

I file di intestazione e di libreria di SQL Server Native Client vengono installati con SQL Server. Quando si sviluppa un'applicazione, è importante copiare e installare nell'ambiente di sviluppo tutti i file necessari per lo sviluppo. Per ulteriori informazioni sull'installazione e la ridistribuzione di SQL Server Native Client, vedere Installazione di SQL Server Native Client.

I file di intestazione e di libreria di SQL Server Native Client vengono installati nel percorso seguente:

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

Il file di intestazione di SQL Server Native Client (sqlncli.h) può essere utilizzato per aggiungere alle applicazioni personalizzate funzionalità di accesso ai dati di SQL Server Native Client. Il file di intestazione di SQL Server Native Client contiene tutte le definizioni, gli attributi, le proprietà e le interfacce necessari per sfruttare le nuove caratteristiche introdotte in SQL Server 2005.

Oltre al file di intestazione di SQL Server Native Client, è presente anche un file di libreria sqlncli11.lib, che rappresenta la libreria di esportazione per la funzionalità del programma per la copia bulk (BCP, Bulk Copy Program) di SQL Server per ODBC.

Il file di intestazione di SQL Server Native Client è compatibile con le versioni precedenti per i file di intestazione sqloledb.h e odbcss.h utilizzati con Microsoft Data Access Components (MDAC) ma non contiene i CLSID per SQLOLEDB (il provider OLE DB per SQL Server incluso con MDAC) o simboli per la funzionalità XML (non supportata da SQL Server Native Client).

Le applicazioni ODBC non possono fare riferimento all'intestazione di SQL Server Native Client (sqlncli.h) e a odbcss.h nello stesso programma. Anche se non si utilizzano le caratteristiche introdotte in SQL Server 2005, potrà essere utilizzato il file di intestazione di SQL Server Native Client in sostituzione del più obsoleto odbcss.h.@@@

Le applicazioni OLE DB che utilizzano il provider OLE DB di SQL Server Native Client devono fare riferimento solo a sqlncli.h. Se un'applicazione utilizza sia MDAC (SQLOLEDB) sia il provider OLE DB di SQL Server Native Client, può fare riferimento sia a sqloledb.h sia a sqlncli.h, ma il primo riferimento deve essere a sqloledb.h.

Utilizzo del file di intestazione di SQL Server Native Client

Per utilizzare il file di intestazione di SQL Server Native Client , è necessario utilizzare un'istruzione include all'interno del codice di programmazione C/C++. Nelle sezioni seguenti viene descritto come eseguire questa operazione sia per le applicazioni OLE DB sia per le applicazioni ODBC.

[!NOTA]

I file di intestazione e di libreria di SQL Server Native Client possono essere compilati solo utilizzando Visual Studio C++ 2002 o versione successiva.

OLE DB

Per utilizzare i file di intestazione di SQL Server Native Client in un'applicazione OLE DB utilizzando le righe di codice di programmazione seguenti:@@@

#define _SQLNCLI_OLEDB_
include "sqlncli.h";

[!NOTA]

La prima riga di codice sopra mostrata deve essere omessa se nell'applicazione vengono utilizzate API sia OLE DB che ODBC. Se inoltre nell'applicazione è presente un'istruzione include per sqloledb.h, l'istruzione include per sqlncli.h deve essere successiva.

Quando si crea una connessione a un'origine dati mediante SQL Server Native Client, utilizzare "SQLNCLI11" come stringa del nome del provider.

ODBC

Per utilizzare il file di intestazione di SQL Server Native Client in un'applicazione ODBC, utilizzare le righe di codice di programmazione seguenti:

#define _SQLNCLI_ODBC_
include "sqlncli.h";

[!NOTA]

La prima riga di codice sopra mostrata deve essere omessa se nell'applicazione vengono utilizzate sia le API OLE DB che ODBC. Se inoltre nell'applicazione è presente un'istruzione #include per odbcss.h, deve essere rimossa.

Quando si crea una connessione a un'origine dati mediante SQL Server Native Client, utilizzare "SQL Server Native Client 11.0" come stringa del nome del driver.

Proprietà e nomi dei componenti per versione

Proprietà

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

Nome driver ODBC

SQL Native Client

SQL Server Native Client 10.0

SQL Server Native Client 11.0

SQL Server

Nome file di intestazione ODBC

Sqlncli.h

Sqlncli.h

Sqlncli.h

Odbcss.h

DLL del driver ODBC

Sqlncli.dll

Sqlncl10.dll

Sqlncl11.dll

sqlsrv32.dll

File di libreria ODBC per le API BCP

Sqlncli.lib

Sqlncli10.lib

Sqlncli11.lib

Odbcbcp.lib

DLL ODBC per le API BCP

Sqlncli.dll

Sqlncli10.dll

Sqlncli11.dll

Odbcbcp.dll

OLE DB PROGID

SQLNCLI

SQLNCLI10

SQLNCLI11

SQLOLEDB

Nome file di intestazione OLE DB

Sqlncli.h

Sqlncli.h

Sqlncli.h

Sqloledb.h

DLL del provider OLE DB

Sqlncli.dll

Sqlncli10.dll

Sqlncli11.dll

Sqloledb.dll

sqlncli.h supporta più versioni di SQL Server Native Client grazie alla macro SQLNCLI_VER. Per impostazione predefinita, tramite SQLNCLI_VER viene utilizzata la versione più recente di SQL Server Native Client. Per compilare un'applicazione che utilizza sqlncli10.dll anziché sqlncli11.dll, impostare SQLNCLI_VER su 10.

Collegamento statico e funzioni BCP

Quando in un'applicazione vengono utilizzate funzioni BCP, è importante specificare nella stringa di connessione il driver della stessa versione fornita con il file di intestazione e la libreria utilizzati per compilare l'applicazione.

Se ad esempio si compila un'applicazione utilizzando SQL Server Native Client, nonché il file di libreria (sqlncli11.lib) e il file di intestazione (sqlncli.h) associati presenti in \Programmi\Microsoft SQL Server\110\SDK, assicurarsi di specificare (utilizzando ODBC come esempio) "DRIVER={SQL Server Native Client 11.0}" nella stringa di connessione.

Per ulteriori informazioni, vedere Esecuzione di operazioni di copia bulk.

Vedere anche

Altre risorse

Compilazione di applicazioni con SQL Server Native Client