Components of SQL Server Native Client

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Important

The SQL Server Native Client (often abbreviated SNAC) has been removed from SQL Server 2022 (16.x) and SQL Server Management Studio 19 (SSMS). The SQL Server Native Client (SQLNCLI or SQLNCLI11) and the legacy Microsoft OLE DB Provider for SQL Server (SQLOLEDB) are not recommended for new application development. Switch to the new Microsoft OLE DB Driver (MSOLEDBSQL) for SQL Server or the latest Microsoft ODBC Driver for SQL Server going forward. For SQLNCLI that ships as a component of SQL Server Database Engine (versions 2012 through 2019), see this Support Lifecycle exception.

SQL Server Native Client contains the following components:

Component Description
sqlncli11.dll The dynamic-link library (DLL) file that contains all of the SQL Server Native Client functionality. This includes the SQL Server Native Client OLE DB provider and the SQL Server Native Client ODBC driver.
sqlnclir11.rll The accompanying resource file for the SQL Server Native Client library.
sqlncli.h The SQL Server Native Client header file that contains all of the new definitions needed in order to use SQL Server Native Client. This header file replaces both the odbcss.h and the sqloledb.h header files.

Note: You cannot reference sqlncli.h and odbcss.h in the same program, but you can reference sqlncli.h and sqloledb.h in same program as long as sqloledb.h is defined first.
sqlncli11.lib The library file needed to directly call the bcp utility functions that are part of the SQL Server Native Client ODBC driver.

Note: If you do reference the sqlncli11.lib file in your programming code, you need to make sure that the sqlncli11.dll file is in your system path, and in the system path of the users that make use of your application.

See Also

Building Applications with SQL Server Native Client