Главная » Microsoft SQL Server, Базы данных » Элементы пакетов службы интеграции – ЧАСТЬ 3

0

•                Directlnput. Ввод запроса в параметре SQLStatement либо с клавиатуры, либо щелчком на эллипсе, чтобы открыть таким образом текстовое поле, либо щелчком на кнопке Browse для извлечения запроса из файла, либо щелчком на кнопке Build Query для открытия специализированного построителя запросов.

•                File Connection. Задайте имя файла, из которого во время выполнения пакета будет прочитан запрос.

•                Variable. Определите имя переменной, содержащей выполняемый запрос.

Запрос можно сделать динамическим либо с помощью параметров, либо с помощью свойства SQLExpression страницы Expressions редактора. Использование выражений — несколько более сложный, но гораздо более гибкий метод, чем использование параметров. Последние предназначены только для подстановки в предложения WHERE, причем (за исключением подключений ADO.NET) только в довольно простых запросах. Если используются параметры, то запрос вводится с маркером для каждого используемого параметра, после чего этот параметр отображается на некоторую переменную во вкладке Parameter Mapping. Маркеры параметров и их отображение варьируются для разных диспетчеров подключений.

•                OLE DB. Создайте запрос, помечая символом вопросительного знака местоположение каждого параметра. При этом соблюдайте очередность: используйте 0 для первого параметра, 1 — для второго и т.д.

•                ODBC. То же, что и OLE DB, за исключением того, что нумерация параметров начинается с единицы, а не с нуля.

•                ADO. Маркируйте местоположение каждого параметра символом вопросительного знака, за которым следует некоторое нечисловое значение. В данном случае это порядок, в котором значения будут подставляться в параметры.

•                ADO.NET. Напишите запрос, как если бы параметры были переменными, объявленными в Т-SQL (например, SELECT name FROM table WHERE id=@ID), a затем обратитесь к параметру по имени для отображения.

Параметр ResultSet (на странице General) определяет, как результаты запроса возвращаются переменным.

•                None. Результаты не заносятся в переменные.

•                Single row. Результаты одиночных запросов (т.е. обрабатывающих одну строку) сохраняются в переменных напрямую. Во вкладке Result Set каждому возвращаемому столбцу назначаются переменные назначения. Как и в случае с входными параметрами, имена результатов зависят от типа диспетчера подключения. В подключениях ADO, ADO.NET и OLE DB столбцы отображаются в прямом порядке, начиная с нуля. В ODBC также используется числовое отображение, но начинающееся с единицы. К тому же подключения ADO и OLE DB позволяют столбцам отображаться по имени, а не порядковому номеру.

•                Full result set. Многострочные результирующие наборы данных сохраняются в переменных типа Object для дальнейшего использования в циклах Foreach и прочих конструкциях. Во вкладке Result Set отобразите результат с именем 0 (нуль) на объектную переменную, а тип результата установите в Full Result Set.

•                XML. Результаты сохраняются в документах объектной модели XML для дальнейшего использования в циклах Foreach и прочих конструкциях. Во вкладке Result Set отобразите результат с именем 0 (нуль) на объектную переменную, а тип результата установите в Full Result Set.

File System Task. Этот элемент реализует множество операций над файлами (копирование, перемещение, удаление, переименование и установка атрибутов) и папками (копирование, создание, удаление, удаление содержимого, перемещение). Файлы или папки источника и назначения можно определить с помощью диспетчера подключений либо с помощью строковой переменной, содержащей полный путь. Не забудьте при конфигурировании диспетчера подключения установить соответствующий тип использования. Установите параметр OverwriteDestination или UseDirectorylfExists, чтобы определить порядок замещения уже существующих объектов.

FTP. Поддержка самой распространенной функциональности FTP, включая отправку, получение и удаление файлов, а также создание и удаление каталогов. С помощью диспетчера подключения FTP определите серверы. Любой удаленный файл или путь должен быть определен с помощью непосредственного ввода либо строковой переменной. В именах файлов допускаются символы макроподстановки. В параметре

OverWriteFileAtDest определите, следует ли замещать уже существующий файл, а в параметре IsAsciiTransfer режим передачи —двоичный файл или ASCII.

?               Message Queue. Отправка или получение сообщений из очереди MSMQ. Задайте подключение к очереди, тип сообщения и операцию: получение или отправку.

?               Script. Это задание позволяет внедрять в пакет программный код Visual Basic .NET. Среди параметров этого задания стоит упомянуть следующие.

•                PrecompileScriptlntoBinaryCode. При сохранении сценарий компилируется конструктором, что увеличивает вероятность корректного выполнения в любой среде. В то же время за это приходится расплачиваться увеличением размера файла пакета.

•                ReadOnly Variables/Read Write Variables. В этих параметрах перечисляются через запятую переменные, доступные только для чтения или для чтения и записи. Попытка обращения к любой переменной, не вошедшей в данный список, приведет к ошибке выполнения. Имена переменных чувствительны к регистру символов, так что myvar и MyVar — две совершенно разные переменные.

•                EntryPoint. Имя класса, содержащего точку входа в сценарий. Обычно не имеет смысла изменять имя, предложенное по умолчанию (ScriptMain). При этом генерируется оболочка программного кода:

Public Class ScriptMain Public Sub MainO

‘ Программный код вводится здесь Dts.TaskResult = Dts.Results.Success End Sub End Class

После выполнения сценарий должен вернуть результат Dts . TaskResult, сообщающий об успешном или ошибочном выполнении программного кода (значение Dts. TaskResults . Success или Dts . TaskResults . Failure соответственно). Ссылки на переменные описываются с помощью коллекции Dts .Variables. Например, чтобы сослаться на переменную MyVar, нужно использовать свойство Dts.Variables ("MyVar") .Value. Учтите, что эта коллекция чувствительная к регистру символов, поэтому ссылка на "myvar" не вернет значение переменной MyVar. Объект Dts является экземпляром класса ScriptObj ectModel, который имеет ряд других полезных членов: Dts . Connections для обращения к диспетчерам подключений; методы Dts . Events . Fire — для генерации событий и метод Dts . Log — для выполнения записи в журнал. Более подробно эта тема обсуждается в статье “Interacting with the Package in the Script Task” утилиты SQL Server 2005 Books Online.

?               Send Mail. Отправка текстового электронного сообщения на сервер SMTP. Заполните в диспетчере подключений SMTP все необходимые поля: То, From и т.п. Если сообщение должно быть отправлено по множеству адресов, разделите их запятыми (но не точками с запятыми). Источник тела сообщения указывается в параметре MessageSourceType: Direct Input — если текст сообщения будет вводиться в поле MessageSource; File Connection— если текст будет считан из файла в ходе выполнения: Variable — если содержимое будет извлекаться из строковой переменной. Вложения в письмо вводятся как разделенные вертикальной чертой полные спецификации. Отсутствие какого-либо из файлов вложения приводит к ошибке выполнения задания.

И Transfer Database. Копирование или перемещение полной базы данных из экземпляра SQL Server 2005 или SQL Server 2000 в экземпляр SQL Server 2005. Выберите или более

быстрый метод— DatabaseOff line (который отсоединяет базы данных, копирует файлы, а затем снова подключает к базе), или более медленный— DatabaseOnline (использующий для создания целевой базы данных объектную модель SMO). Идентификация серверов источника и назначения осуществляется с помощью диспетчеров подключений. Для метода DatabaseOf f line определите имена баз данных источника и назначения, а также пути к соответствующим файлам данных. Метод DatabaseOnline требует ту же информацию, а также путь к общему сетевому ресурсу для каждого файла источника и назначения. Определение путей UNC к сетевым ресурсам является самым распространенным методом, однако пакеты могут напрямую обращаться к файлам, расположенным локально на том же сервере. Использование метода DatabaseOnline требует, чтобы все объекты, связанные с базой данных (такие как регистрационные записи), были предоставлены перед перемещением базы данных.

Transfer Error Messages. Передача между серверами произвольных сообщений об ошибках. Серверы источника и назначения определяются с помощью менеджеров подключений SMO; также укажите список передаваемых сообщений.

Transfer Jobs. Копирование заданий SQL Agent из SQL Server 2000 или 2005 в экземпляр SQL Server 2005. Серверы источника и назначения определяются с помощью менеджеров подключений SMO; таюке укажите список перемещаемых заданий. Все ресурсы, необходимые заданиям (например, базы данных), должны быть доступны для успешного копирования.

Transfer Logins. Копирование регистрационных записей из SQL Server 2000 или 2005 в экземпляр SQL Server 2005. Серверы источника и назначения определяются с помощью менеджеров подключений SMO; также укажите список перемещаемых регистрационных записей. Этот список должен состоять из выбранных регистрационных записей сервера источника или всех регистрационных записей, имеющих доступ к выбранным базам данных (см. параметр LoginsToTransf ег).

Transfer Master Stored Procedures. Копирование всех дополнительных хранимых процедур из базы данных master одного сервера в базу master другого. Определите серверы источника и назначения с помощью менеджеров подключений SMO. Также вы можете либо выбрать все дополнительные хранимые процедуры, либо копировать только избранные.

Transfer Objects. Копирование любых объектов уровня базы данных из SQk Server 2000 или 2005 в экземпляр SQL Server 2005. Определите серверы источника и назначения с помощью менеджеров подключений SMO, а также базы данных на каждом из серверов. Для каждого из типов объектов выберите либо копирование всех подобных объектов, либо создайте список объектов и параметров копирования (таких как DropObjectFirst или Copylndexes).

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

По теме:

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