Microsoft sql server native client что это
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов в России Pyatilistnik.org. В прошлый раз мы с вами разобрали, как скачать последнюю версию SQL Server Management Studio и настроили Always On кластер. В сегодняшней публикации мы рассмотрим, где скачать и как установить SQL Native Client, разберем примеры его использования на практике, думаю будет как всегда познавательно и интересно.
Что такое SQL Native Client
Драйвер ODBC для SQL Native Client всегда используется вместе с диспетчером драйверов ODBC, поставляемым с компонентами доступа к данным Windows. Поставщик OLE DB для собственного клиента SQL Server можно использовать вместе с базовыми службами OLE DB, поставляемыми с компонентами доступа к данным Windows, но это не является обязательным требованием. Выбор использования Core Services не зависит от требований отдельного приложения (например, если требуется пул соединений).
Хотя SQL Native Client использует компоненты в Windows DAC, он явно не зависит от конкретной версии. Собственный клиент SQL Server можно использовать с версией Windows DAC, установленной с любой операционной системой, поддерживаемой нативным клиентом SQL Server.
Зачем мне нужен собственный клиент SQL?
Например данный клиент используется при установке отказоустойчивых служб удаленных рабочих столов, где они используются на Connection Broker.
Где скачать SQL Native Client
Скачать собственный клиент SQL Server вы можете с официального сайта Microsoft, единственное вам придется потрудится найти самую последнюю, актуальную версию, на момент написания данной статьи, самой свежей версией собственного клиента SQL Server является SQL Native Client 11 (2011.110.7001.00).
Собственный клиент SQL Server распространяется тремя способами:
Тут будет два файла sqlncli.msi, один для 64-x, а другой для 86-x архитектуры.
В результате у вас будет свой файл sqlncli.msi, в зависимости от вашей разрядности системы.
Как установить SQL Native Client
Давайте разберем установку SQL Native Client, она тривиальна, но я приведу ее тут. Запускаем MSI файл, в открывшемся мастере просто нажимаем «Далее».
Далее принимаем лицензионное соглашение.
Выбираем оба компонента:
Далее остается просто нажать кнопку «Установить«.
Через пол минуты мастер завершит установку SQL Native Client.
Как узнать версию SQL Native Client
Иногда нужно выяснить версию SQL Native Client, по ряду причин. Методом много, я приведу несколько. Откройте панель управления Windows и перейдите в раздел «Программы и компоненты«. Находим программу в списке и в столбце с версией находим нужную информацию.
Еще вариант, это перейти по пути «Панель управления\Все элементы панели управления\Администрирование» и найти там компонент «Источники данных ODBC (ODBC Data Soutces)«. На любой вкладке нажмите кнопку «Добавить» и в открывшемся окне найдите компонент SQL Server Native Client. Там вы увидите версию компонента.
Так же очень просто сделать запрос в PowerShell, для этого выполните:
В итоге вы должны получить список программ, где легко отыщите версию SQL Native Client.
Ну и метод для командной строки, в которой нужно ввести:
собственный клиент SQL Server
SNAC или SQL Server Native Client — термин, который используется в качестве взаимозаменяемого, чтобы ссылаться на драйверы ODBC и OLE DB для SQL Server.
SQL Server Native Client (SQLNCLI) остается устаревшим и не рекомендуется использовать его для новых задач разработки. Вместо этого используйте новый драйвер Microsoft OLE DB для SQL Server (MSOLEDBSQL), который будет обновлен с самыми последними серверными компонентами.
Дополнительные сведения и о загрузке драйверов SNAC или ODBC см. в записи блога, описанной в статье о жизненном цикле SNAC. Дополнительные сведения о драйвере ODBC для SQL Server см. в разделе Microsoft ODBC Driver for SQL Server.
ODBC в SQL Server собственном клиенте поддерживает три функции, которые были добавлены в стандартный интерфейс ODBC в пакете SDK для Windows 7:
Асинхронное выполнение операций, связанных с соединением. Дополнительные сведения см. в разделе Асинхронное выполнение.
Возможность расширения типа данных C. Дополнительные сведения о типах данных см. в разделе Типы данных C в ODBC.
Для поддержки этой функции в SQL Server собственном клиенте SQLGetDescField может возвращать SQL_C_SS_TIME2 (для типов времени ) или SQL_C_SS_TIMESTAMPOFFSET (для DateTimeOffset) вместо SQL_C_BINARY, если приложение использует ODBC 3,8. Дополнительные сведения см. в разделе Поддержка типов данных для улучшений даты и времени ODBC.
Многократный вызов метода SQLGetData с небольшим буфером для получения значения параметра большого объема. Дополнительные сведения см. в разделе Получение выходных параметров с помощью метода SQLGetData.
В следующих разделах описываются изменения поведения собственного клиента SQL Server в SQL Server 2012 (11.x).
SQLDescribeParam будет постоянно возвращать значение соответствия спецификации ODBC. Дополнительные сведения см. в разделе SQLDescribeParam.
Когда использовать собственный клиент SQL Server
Собственный клиент SQL Server — одна из технологий для доступа к данным в базе данных SQL Server. Обсуждение других технологий доступа к данным см. в разделе Схема технологий доступа к данным.
В принятии решения о необходимости использования в качестве технологии доступа к данным собственного клиента SQL Server необходимо принимать во внимание ряд факторов.
Если разрабатывается приложение на основе COM и необходим доступ к новым функциям SQL Server, следует использовать собственный клиент SQL Server. Если доступ к новым возможностям SQL Server не требуется, то можно продолжать использовать компоненты WDAC.
Для существующих приложений OLE DB и ODBC самый важный вопрос — необходим ли доступ к новым функциям SQL Server. Если имеется отлаженное приложение, не требующее новых возможностей SQL Server, то можно продолжать использование компонентов WDAC. Но если вам нужно получить доступ к этим новым функциям, таким как тип данных XML, следует использовать SQL Server собственный клиент.
Собственный клиент SQL Server и MDAC поддерживают уровень изоляции транзакций read committed при использовании управления версиями строк, однако изоляцию транзакций моментальных снимков поддерживает только собственный клиент SQL Server. С точки зрения программирования уровень изоляции транзакции READ COMMITTED с управлением версиями строк — то же самое, что и транзакция READ COMMITTED.
сведения о различиях между SQL Server собственным клиентом и компонентами mdac см. в разделе обновление приложения для SQL Server Native Client из MDAC.
Установка собственного клиента SQL Server
Microsoft SQL Server Native Client 11.0 устанавливается при установке SQL Server 2016 (13.x);.
нет собственного клиента SQL Server 2016. Дополнительные сведения см. в разделе SQL Server Native Client.
Также можно извлечь файл sqlncli.msi с веб-страницы пакета дополнительных компонентов SQL Server 2012. чтобы загрузить самую последнюю версию SQL Server Native Client, перейдите на страницу Microsoft® SQL Server® 2012 с пакетом дополнительных компонентов. если SQL Server на компьютере также установлена предыдущая версия собственного клиента, чем SQL Server 2012, то SQL Server собственный клиент 11,0 будет устанавливаться параллельно с более ранней версией.
Файлы собственного клиента SQL Server (sqlncli11.dll, sqlnclir11.rll и s11ch_sqlncli.chm) устанавливаются в следующий каталог.
Все необходимые настройки реестра для поставщика OLE DB собственного клиента SQL Server и драйвера ODBC собственного клиента SQL Server выполняются в процессе установки.
Заголовочный файл и библиотека собственного клиента SQL Server (sqlncli.h и sqlncli11.lib) устанавливаются в следующий каталог.
%PROGRAMFILES%\Microsoft SQL Server\110\SDK
Собственный клиент SQL Server можно распространять в виде файла sqlncli.msi. При развертывании приложения может потребоваться установка собственного клиента SQL Server. Один из способов установки нескольких пакетов в одном (с точки зрения пользователя) сеансе установки состоит в применении технологии построителей цепочек и загрузчиков. Дополнительные сведения см. в статьях Разработка пользовательского пакета начального загрузчика для Visual Studio 2005 и Добавление настраиваемых необходимых компонентов.
Версии файла sqlncli.msi для архитектур x64 и Itanium устанавливают и 64-разрядную версию, и 32-разрядную версию собственного клиента SQL Server. Если приложение планируется использовать на платформе, отличной от той, на которой оно разрабатывалось, можно скачать из центра загрузки Майкрософт версии sqlncli.msi for x64, Itanium и x86.
msiexec /i sqlncli.msi ADDLOCAL=ALL APPGUID=
Автоматическая установка
При использовании параметров /passive, /qn, /qb или /qr программы msiexec необходимо также указать параметр IACCEPTSQLNCLILICENSETERMS=YES, тем самым явно подтверждая принятие условий соглашения конечного пользователя. Этот параметр указывается только прописными буквами.
Удаление SQL Server Native Client
msiexec /i sqlncli.msi APPGUID=
Значением, передаваемым в APPGUID, служит код продукта. Код продукта необходимо создать при использовании установщика (Майкрософт) для формирования пакета установки приложения.
Компоненты собственного клиента SQL Server
Помимо возможностей компонентов доступа к данным WDAC (ранее MDAC), в собственном клиенте SQL Server реализовано множество других функций, позволяющих пользоваться функциональностью SQL Server.
В этом разделе
Изменение поведения драйвера ODBC при обработке преобразования символов
Описание изменения поведения, реализованного с версии Native Client SQL Server 2012.
Использование зеркального отображения базы данных
Описывает, как SQL Server собственный клиент поддерживает использование зеркальных баз данных, то есть возможность сохранения копии или зеркала SQL Server базы данных на резервном сервере.
Выполнение асинхронных операций
Обсуждение поддержки собственным клиентом SQL Server асинхронных операций, то есть способности немедленно возвращать управление, не блокируя вызывающий поток.
Использование множественных активных результирующих наборов (MARS)
Обсуждение поддержки собственным клиентом SQL Server режима MARS. Режим MARS позволяет выполнять и получать несколько результирующих наборов через одно подключение к базе данных.
Использование типов данных XML
Обсуждение поддержки собственным клиентом SQL Server типа данных XML (представляющего собой тип данных на основе XML), который можно использовать как тип столбца, переменной, параметра или значения, возвращаемого функцией.
Использование определяемых пользователем типов
Описывает, как SQL Server собственный клиент поддерживает типы User-Defined (UDT), которые расширяют систему типов SQL, позволяя сохранять объекты и пользовательские структуры данных в SQL Server базе данных.
Использование типов больших значений
Обсуждение поддержки собственным клиентом SQL Server типов данных больших значений, то есть типов данных больших объектов (LOB).
Смена пароля программным способом
Обсуждение поддержки собственным клиентом SQL Server управления истекшими паролями с возможностью сменить пароль на клиенте без вмешательства администратора.
Работа с изоляцией моментального снимка
Обсуждение поддержки собственным клиентом SQL Server расширений управления версиями строк, предназначенных для улучшения производительности путем исключения сценариев блокировки модулей чтения или записи.
Работа с уведомлениями запросов
Обсуждение поддержки собственным клиентом SQL Server уведомления потребителя об изменении набора строк.
Выполнение операций массового копирования
Описывает, как SQL Server собственный клиент поддерживает операции с массовым копированием, которые позволяют передавать большие объемы данных в SQL Server таблицу или представление или из нее.
Использование шифрования без проверки
Обсуждение использования собственного клиента SQL Server для шифрования данных, передаваемых на сервер, без проверки сертификата.
Возвращающие табличное значение параметры (SQL Server Native Client)
Обсуждение поддержки собственным клиентом SQL Server возвращающих табличные значения параметров.
Большие определяемые пользователем типы данных CLR
Обсуждение поддержки определяемых пользователем типов данных среды CLR.
Поддержка FILESTREAM
Обсуждается SQL Server поддержка собственного клиента для расширенного компонента FILESTREAM.
Поддержка имени субъекта-службы (SPN) в клиентских соединениях
Обсуждение расширенной поддержки имен участника-службы (SPN) для проведения взаимной проверки подлинности по всем протоколам.
Поддержка разреженных столбцов в собственном клиенте SQL Server
Обсуждение поддержки собственным клиентом SQL Server разреженных столбцов.
Улучшения функций даты и времени
Обсуждение поддержки новых типов данных даты и времени, добавленной в собственный клиент SQL Server.
Обнаружение метаданных
Обсуждение улучшений в механизме обнаружения метаданных, внесенных в SQL Server 2012 (11.x).
Поддержка высокого уровня доступности и аварийного восстановления собственного клиента SQL Server
Описывается настройка приложения для использования функций высокого уровня доступности и аварийного восстановления, появившихся в SQL Server 2012 (11.x).
Доступ к диагностическим сведениям в журнале расширенных событий
Описывает улучшения, реализованные в клиенте SQL Server Native Client, и функции отслеживания данных, которые дают доступ к диагностическим данным в кольцевом буфере и журналах XEvents.
Поддержка SQL Server Native Client для LocalDB
Обсуждение поддержки клиентом Native Client SQL Server улучшенной функции LocalDB.














