Главная » Microsoft SQL Server, Базы данных » Функции SQL Server Native Client

0

Сообщество разработчиков не приветствует доступ к новым функциям SQL Server 2005 посредством SQL Server Native Client. Если новые функции не нужны, а для доступа к данным необходим управляемый код, то будет достаточно использования библиотеки ADO.NET. Несмотря на то что детальное рассмотрение новых функций SQL Server 2005 выходит за рамки главы, приведем здесь их краткий обзор.

ADO.NET представляет собой библиотеку, обеспечивающую функциональность На заметку среды .NET для подключения к множеству источников данных. Классы, входящие в состав этой библиотеки, позволяют программистам создавать различные элементы базы данных и взаимодействовать с ними.

С точки зрения разработчиков, библиотека MDAC (Microsoft Data Access Components; совместима с SQL Server 2005, однако она не поддерживает новые расширенные возможности этого сервера.

Поскольку SQL Native Client является компонентом SQL Server 2005, его следу- На заметку ет устанавливать на компьютере разработчика приложений и включать в про- грамму установки приложения. На установочном компакт-диске SQL Server 2005 вы найдете файл sqlncli.msi, который позволяет установить SQL Native Client без установки СУБД.

Системные требования

Системные требования для установки SQL Server Native Client перечислены в табл. 5.1. Сама операционная система диктует требования к аппаратному обеспечению, в том числе к памяти, объему жестких дисков, производительности процессора и т.д.

Таблица 5.1. Системные требования для установки SNAC

Инсталлятор

Операционная система

Совместимая версия SQL Server

Windows Installer 3.0

Windows ХР SP1+

Windows 2000 Professional Windows 2000 Server Windows 2000 Advanced Server Windows 2000 Datacenter Windows 2003 Server Windows 2003 Enterprise Server Windows 2003 Datacenter Server

SQL Server 7.0 или более поздние версии

Дополнительную информацию о системных требованиях, необходимых для установки SQL Server 2005, см. в главе 4.

Зеркальное отображение баз данных

Когда установлено подключение к базе данных SQL Server 2005, в сценарии зеркального отображения автоматически определяется резервный сервер. Эта информация используется в SNAC для незаметного переключения на резервный сервер, если на основном произойдет сбой. Идентифицировать резервный сервер можно непосредственно в строке подключения к базе данных с помощью ключевого слова Failover_Partner.

#     Если подключение к основному серверу неожиданно обрывается, то все дан-

На заметку ные, с которыми велась работа в данный момент, будут утеряны, при этом, если выполнялась какая-либо транзакция, она будет аннулирована. Для соединения с резервным сервером подключение должно быть закрыто и снова открыто, только после этого работа с данными может быть возобновлена. Подключение к резервному серверу будет устанавливаться автоматически, если идентификация этого сервера будет частью объекта подключения, либо упоминалась в строке подключения, либо в предыдущем успешном подключении к основному серверу перед тем, как он вышел из строя.

В главе 39 описывается еще один инструмент, используемый для обеспечения доступности данных.

Асинхронные операции

Часто возникает необходимость получить немедленный отклик от отправленного вызова к базе данных. К счастью, теперь можно открывать и закрывать подключения к базе данных, не ожидая установки соответствующего свойства.

К тому же асинхронные вызовы позволяют получить результирующий набор данных. В этом случае результирующий набор данных будет существовать, но его заполнение данными может быть продолжено. Таким образом, всегда нужно проверять асинхронный статус результирующего набора данных и обрабатывать его только после завершения заполнения.

В выполнении асинхронных операций скрыто несколько подводных камней, в ; На заметку частности, при заполнении объектов подключения или при использовании механизмов курсоров. В этих случаях асинхронный статус невозможно узнать.

Множества активизированных результирующих наборов данных (MARS)

В SQL Server 2005 реализована поддержка множества активизированных инструкций SQL в одном и том же подключении, благодаря чему можно обращаться к нескольким наборам данных и выполнять дополнительные инструкции, не закрывая открытый набор данных.

Компания Microsoft дает ряд советов для создания приложений, использующих технологии MARS (Multiple Active Result Sets).

?               Результирующий набор каждой инструкции должен иметь малую продолжительность жизни.

?               Если результирующий набор данных имеет продолжительную жизнь или он очень большой, то лучше использовать серверный курсор.

?               Всегда дочитывайте до конца результирующий набор данных и используйте вызовы API для изменения свойств подключения.

По умолчанию функция MARS отключена. Она включается в строке подключе- / На заметку ния с помощью значения Mars Conn для поставщика данных OLE DB или зна- чения Mars_Connection для поставщика ODBC.

Типы данных XML

Подобно существовавшему ранее для строк переменной длины типу данных VarChar, новый тип данных XML предназначен для документов XML и их фрагментов. Этот тип можно использовать для объявления переменных в хранимых процедурах, объявления параметров, а также для возвращаемых данных и их преобразований.

Дополнительная В главе 31 приводится дополнительная информация об использовании xml. информация .

Типы, определяемые пользователем

Эти типы определяются с помощью кода .NET Common Language Runtime (CLR). При этом можно использовать популярные языки программирования C# и VB.NET. Сами данные представляются как поля и свойства, а их поведение описывается с помощью методов класса.

Особо крупные типы данных

Для обработки значений длиной 231-1 байтов или символов в SQL Server 2005 введены три новых типа данных. Эти типы можно использовать в объявлениях переменных, что позволяет преодолеть существовавший ранее барьер в 8 Кбайт. Эти новые типы и соответствующие им старые приведены в табл. 5.2.

Таблица 5.2. Новые особо крупные типы данных в SQL Server 2005

Новый тип данных

Старый тип данных

Varchar(max)

text

Nvarchar(max)

ntext

Varbinary(max)

Image

Замена устаревших паролей

Эта новая функция SQL Server 2005 позволяет пользователям без вмешательства администратора изменять свои пароли, срок действия которых истек.

Пароль пользователя можно изменить одним из следующих способов:

?               программным путем, например указывая в строке подключения как старый, так и новый пароль;

?               с помощью интерфейса пользователя для изменения пароля до окончания срока его действия;

?               с помощью интерфейса пользователя для изменения пароля уже после окончания его срока действия.

Если старый и новый пароли указываются явно в строке подключения, убедитесь, что старый пароль не остался в каком-либо внешнем файле. В то же время лучше встраивать новый пароль в динамические конструкции, чтобы избежать проблем взаимодействия с системой безопасности.

Система безопасности SQL Server 2005 подробно рассматривается в главе 40.

Уровень изоляции snapshot

Новый уровень изоляции SNAPSHOT повышает конкуренцию и увеличивает производительность за счет недопущения блокировки чтения-записи.

Этот уровень изоляции основан на поддержке версий записей таблиц. Транзакция начинается с инструкции BeginTransaction, но ей не присваивается последовательный номер, пока не будет выполнена первая инструкция Т-SQL. Для поддержания версий строк таблицы используются их временные логические копии, которые хранятся в базе данных tempdb.

Если в базе данных tempdb недостаточно места для хранения версий, то лю- Назаметку бые функции и операции, такие как триггеры, MARS, индексация, выполнение клиентских инструкций Т-SQL и поддержание версий строк, завершатся ошибкой. Таким образом, убедитесь, что база данных tempdb имеет размер, достаточный для своего беспроблемного использования.

Резюме

Утилита SQL Server Configuration Manager обеспечивает управление серверными протоколами, а также протоколом SQL Server Native Client.

SQL Server поддерживает новые функции, которые расширяют возможности приложений и клиентов. Доступ разработчиков к этим новым функциям реализуется с помощью клиента SQL Server Native Client (SNAC). Теперь клиент может сам динамически изменять свои пароли, расширять возможности блокировки и пользоваться возможностями асинхронных вызовов. В дополнение к этому за счет возможности использования зеркальных серверов и прочих полезных функций существенно повысилась устойчивость системы.

Источник: Нильсен, Пол. Microsoft SQL Server 2005. Библия пользователя. : Пер. с англ. — М. : ООО “И.Д. Вильямс”, 2008. — 1232 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии