- Support Policies for SQL Server Native Client
- Server Support
- Supported Operating System Versions
- ADO Support Policies
- BCP Support Policies
- ODBC Support Policies
- OLE DB Support Policies
- Support Lifecycle
- Support Lifecycle exception
- Installing SQL Server Native Client
- Silent Install
- Uninstalling SQL Server Native Client
- Установка собственного клиента SQL Server
- Автоматическая установка
- Удаление SQL Server Native Client
Support Policies for SQL Server Native Client
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.
This topic discusses how various data-access components can be used with SQL Server Native Client (SNAC).
Server Support
SQL Server Native Client 11.0 supports connections to, SQL Server 2008 (10.0.x), SQL Server 2008 R2 (10.50.x), SQL Server 2012 (11.x), SQL Server 2014 (12.x), and Azure SQL Database.
Supported Operating System Versions
The following table lists which operating systems support SQL Server Native Client.
Microsoft Windows Server 2003 or later
Microsoft Windows XP Service Pack 1 or later
Microsoft Windows Vista (requires SQL Server Service Pack 2, or later)
Microsoft Windows XP Service Pack 2, or later
Microsoft Windows XP Service Pack 2 or later
Microsoft Windows Server 2008 R2
Microsoft Windows Server 2008 R2
ADO Support Policies
ADO applications can use the SQLOLEDB OLE DB provider that is included with Windows if they do not require any of the features of SQL Server 2005 (9.x) or later.
ADO applications can use the version of SQL Server Native Client included in SQL Server 2005 (9.x). ADO applications can also use SQL Server Native Client 11.0 (included in SQL Server 2014 (12.x)), but if they do so they must specify DataTypeCompatibility=80 in the connection strings. Only features from SQL Server 2005 (9.x) are available when DataTypeCompatibility=80 is present in the connection strings.
BCP Support Policies
Beginning in SQL Server 2008 (10.0.x), bcp.exe supports data files that are no more than three SQL Server versions older than the version of SQL Server in which bcp.exe shipped.
ODBC Support Policies
Applications should use the SQL Server ODBC driver included with the Windows operating system. You can use the SQL Server Native Client ODBC driver if the application is certified it for use with a specific version of SQL Server Native Client.
OLE DB Support Policies
Applications should use the SQL Server OLE DB provider included with the Windows operating system. You can use the SQL Server Native Client OLE DB provider if the application is certified for use with a specific version of SQL Server Native Client.
OLE DB applications that have not been certified for use with SQL Server Native Client can use SQL Server Native client if they specify DataTypeCompatibility=80 in their connection strings.
OLE DB applications that use OLE DB Service Components can only use SQL Server Native client if they specify DataTypeCompatibility=80 in their connection strings. However, no features added after SQL Server 2005 (9.x) will be available in this case.
Support Lifecycle
SQL Server Native Client support lifecycle can be found on the SNAC lifecycle explained blog. This lifecycle applies to building database applications using SQL Server Native Client.
Support Lifecycle exception
Limited support is provided for the SQL Native Client 11.0 that gets installed by SQL Server 2012 through 2019 until the SQL Server respective end-of-support lifecycles. This support exception only applies to the SNAC 11 driver that is installed and used by SQL Server components (e.g. SQL Server Engine Linked Servers). This means the driver is supported on Windows versions where SQL Server 2012 through SQL Server 2019 are supported. Do not remove the SQL Native Client provider that gets installed by SQL Server on the system. The support exception only covers critical security fixes and does not include enhancements or fixes to SQL Native Client 11.0.
This support exception does not cover using SQL Native Client 11.0 as a driver for database applications to connect to SQL Server. Any applications using SNAC 11.0 must be updated to use newer versions (see Download ODBC Driver for SQL Server — ODBC Driver for SQL Server and Download Microsoft OLE DB Driver for SQL Server — OLE DB Driver for SQL Server).
Installing SQL Server Native Client
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.
Microsoft SQL Server Native Client 11.0 is installed when you install SQL Server 2016 (13.x).
There is no SQL Server 2016 Native Client. For more information, see SQL Server Native Client.
You can also get sqlncli.msi from the SQL Server 2012 Feature Pack web page. To download the most recent version of the SQL Server Native Client, go to Microsoft® SQL Server® 2012 Feature Pack. If a previous version of SQL Server Native Client earlier than SQL Server 2012 is also installed on the computer, SQL Server Native Client 11.0 will be installed side-by-side with the earlier version.
The SQL Server Native Client files (sqlncli11.dll, sqlnclir11.rll, and s11ch_sqlncli.chm) are installed to the following location:
All appropriate registry settings for the SQL Server Native Client OLE DB provider and the SQL Server Native Client ODBC driver are made as part of the installation process.
The SQL Server Native Client header and library files (sqlncli.h and sqlncli11.lib) are installed in the following location:
%PROGRAMFILES%\Microsoft SQL Server\110\SDK
In addition to installing SQL Server Native Client as part of the SQL Server installation, there is also a redistributable installation program named sqlncli.msi, which can be found on the SQL Server installation disk in the following location: %CD%\Setup\ .
You can distribute SQL Server Native Client through sqlncli.msi. You might have to install SQL Server Native Client when you deploy an application. One way to install multiple packages in what seems to the user to be a single installation is to use chainer and bootstrapper technology. For more information, see Authoring a Custom Bootstrapper Package for Visual Studio 2005 and Adding Custom Prerequisites.
The x64 and Itanium versions of sqlncli.msi also install the 32-bit version of SQL Server Native Client. If your application targets a platform other than the one it was developed on, you can download versions of sqlncli.msi for x64, Itanium, and x86 from the Microsoft Download Center.
When you invoke sqlncli.msi, only the client components are installed by default. The client components are files that support running an application that was developed using SQL Server Native Client. To also install the SDK components, specify ADDLOCAL=All on the command line. For example:
msiexec /i sqlncli.msi ADDLOCAL=ALL APPGUID=
Silent Install
If you use the /passive, /qn, /qb, or /qr option with msiexec, you must also specify IACCEPTSQLNCLILICENSETERMS=YES, to explicitly indicate that you accept the terms of the end user license. This option must be specified in all capital letters.
Uninstalling SQL Server Native Client
Because applications such as SQL Server server and the SQL Server tools depend on SQL Server Native Client, it is important not to uninstall SQL Server Native Client until all dependent applications are uninstalled. To provider users with a warning that your application depends on SQL Server Native Client, use the APPGUID install option in your MSI, as follows:
msiexec /i sqlncli.msi APPGUID=
The value passed to APPGUID is your specific product code. A product code must be created when using Microsoft Installer to bundle your application setup program.
Установка собственного клиента SQL Server
SQL Server Native Client (часто сокращенный SNAC) удален из SQL Server 2022 (16.x) и SQL Server Management Studio 19 (SSMS). SQL Server Native Client (SQLNCLI или SQLNCLI11) и устаревший поставщик MICROSOFT OLE DB для SQL Server (SQLOLEDB) не рекомендуется для разработки новых приложений. В дальнейшем перейдите на новый драйвер Microsoft OLE DB (MSOLEDBSQL) для SQL Server или последнюю версию Microsoft ODBC Driver для SQL Server. Сведения о SQLNCLI, который поставляется в качестве компонента ядра СУБД SQL Server (версии 2012–2019), см. в этом исключении жизненного цикла поддержки.
Microsoft SQL Server Native Client 11.0 устанавливается при установке SQL Server 2016 (13.x).
Нет SQL Server 2016 Native Client. Дополнительные сведения см. в разделе SQL Server Native Client.
Также можно извлечь файл sqlncli.msi с веб-страницы пакета дополнительных компонентов SQL Server 2012. Чтобы скачать последнюю версию SQL Server Native Client, перейдите на страницу Пакет дополнительных компонентов Microsoft® SQL Server ® 2012. Если на компьютере также установлена предыдущая версия SQL Server Native Client, чем SQL Server 2012, SQL Server Native Client 11.0 будет установлена параллельно с более ранней версией.
Файлы SQL Server Native Client (sqlncli11.dll, sqlnclir11.rll и s11ch_sqlncli.chm) устанавливаются в следующее расположение:
Все соответствующие параметры реестра для поставщика SQL Server Native Client OLE DB и драйвера ODBC SQL Server Native Client вносятся в процессе установки.
Файлы заголовков и библиотек SQL Server Native Client (sqlncli.h и sqlncli11.lib) устанавливаются в следующем расположении:
%PROGRAMFILES%\Microsoft SQL Server\110\SDK
Помимо установки SQL Server Native Client в рамках установки SQL Server, существует также распространяемая программа установки с именем sqlncli.msi, которую можно найти на SQL Server установочном диске в следующем расположении: %CD%\Setup\ .
Вы можете распространять SQL Server Native Client через sqlncli.msi. При развертывании приложения может потребоваться установить SQL Server Native Client. Один из способов установки нескольких пакетов в одном (с точки зрения пользователя) сеансе установки состоит в применении технологии построителей цепочек и загрузчиков. Дополнительные сведения см. в статьях Разработка пользовательского пакета начального загрузчика для Visual Studio 2005 и Добавление настраиваемых необходимых компонентов.
Версии x64 и Itanium sqlncli.msi также установить 32-разрядную версию SQL Server Native Client. Если приложение планируется использовать на платформе, отличной от той, на которой оно разрабатывалось, можно скачать из центра загрузки Майкрософт версии sqlncli.msi for x64, Itanium и x86.
При инициировании sqlncli.msi по умолчанию устанавливаются только компоненты клиентской части. Клиентские компоненты — это файлы, поддерживающие запуск приложения, разработанного с помощью SQL Server Native Client. Чтобы установить также компоненты пакета SDK, укажите в командной строке ADDLOCAL=All . Пример:
msiexec /i sqlncli.msi ADDLOCAL=ALL APPGUID=
Автоматическая установка
При использовании параметров /passive, /qn, /qb или /qr программы msiexec необходимо также указать параметр IACCEPTSQLNCLILICENSETERMS=YES, тем самым явно подтверждая принятие условий соглашения конечного пользователя. Этот параметр указывается только прописными буквами.
Удаление SQL Server Native Client
Так как такие приложения, как сервер SQL Server и средства SQL Server, зависят от SQL Server Native Client, важно не удалять SQL Server Native Client, пока не будут удалены все зависимые приложения. Чтобы предоставить пользователям с предупреждением о том, что приложение зависит от SQL Server Native Client, используйте параметр установки APPGUID в MSI следующим образом:
msiexec /i sqlncli.msi APPGUID=
Значением, передаваемым в APPGUID, служит код продукта. Код продукта необходимо создать при использовании установщика (Майкрософт) для формирования пакета установки приложения.