Поделиться через


Задача «Передача объектов SQL Server»

Область применения: среда выполнения интеграции SSIS SQL Server в Фабрика данных Azure

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

Переносимые объекты

Можно копировать роли сервера, роли и пользователей, а также разрешения на переносимые объекты. Копирование объектов вместе со связанными с ними пользователями, ролями и разрешениями позволяет сделать объекты работоспособными непосредственно после передачи на целевой сервер.

В следующей таблице перечислены типы объектов, которые могут быть скопированы.

Object
Таблицы
Представления
Хранимые процедуры
Определяемые пользователем функции
Defaults
Определяемые пользователем типы данных
Функции секционирования
Схемы секционирования
Схемы
Сборки
Определяемые пользователем статистические функции
Определяемые пользователем типы
Коллекция схем XML

Определяемые пользователем типы (определяемые пользователем типы), созданные в экземпляре SQL Server, имеют зависимости от сборок среды CLR. При использовании задачи передачи объектов SQL Server для передачи определяемых пользователем объектов необходимо также настроить задачу для передачи зависимых объектов. Для переноса зависимых объектов присвойте параметру IncludeDependentObjects значение True.

Параметры таблиц

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

  • Индексы

  • Триггеры

  • Полнотекстовые индексы

  • Первичные ключи

  • Внешние ключи;

Можно также указать, сохраняется ли создаваемый задачей скрипт в формате Юникод.

Целевые параметры

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

Некоторые параметры применяются только к SQL Server. Например, только SQL Server поддерживает схемы.

Параметры безопасности

Задача "Передача объектов SQL Server" может включать пользователей и роли уровня базы данных SQL Server из источника, имени входа SQL Server и разрешения для передаваемых объектов. Например, в передачу можно включить разрешения на передаваемые таблицы.

Передача объектов между экземплярами сервера SQL Server

Задача "Передача объектов SQL Server" поддерживает источник и назначение SQL Server.

События

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

Задача "Передача объектов SQL Server" не сообщает о добавочном ходе передачи объекта; он сообщает только 0% и 100 % завершения.

Значение выполнения

Значение выполнения, определяемое свойством ExecutionValue задачи, возвращает число перенесенных объектов. При присвоении свойству ExecValueVariable задачи "Передача объектов SQL Server" пользовательской переменной сведения о передаче объектов можно сделать доступными для других объектов пакета. Дополнительные сведения см. в статье Переменные в службах Integration Services (SSIS) и разделе об использовании переменных в пакетах.

Записи журнала

Задача «Передача объектов SQL Server» включает следующие записи журнала:

  • TransferSqlServerObjectsTaskStartTransferringObjects. Эта запись журнала указывает, что была начата передача данных. В записях журнала указывается время запуска.

  • TransferSqlServerObjectsTaskStarTransferringObjects. Эта запись журнала указывает, что была завершена передача данных. В записях журнала указывается время завершения.

Кроме того, запись журнала для события OnInformation указывает, сколько объектов определенных типов были выбраны для передачи, сколько объектов было передано, а также сколько произведено усечений таблиц при передаче таблиц с данными. Запись журнала для события OnWarning создается при каждой перезаписи целевого объекта.

Безопасность и разрешения

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

Настройка задачи «Передача объектов SQL Server»

Задача "Передача объектов SQL Server" может быть настроена для передачи всех объектов, всех объектов типа или только указанных объектов типа. Например, можно выбрать копирование только указанных таблиц из базы данных AdventureWorks.

Если задача "Передача объектов SQL Server" передает таблицы, можно указать типы объектов, связанных с таблицами. Например, можно указать, чтобы вместе с таблицами копировались первичные ключи.

Чтобы расширить функциональные возможности передаваемых объектов, можно настроить задачу "Передача объектов SQL Server" для включения имен схем, данных, расширенных свойств передаваемых объектов и зависимых объектов в передаче. При копировании данных можно указать, следует ли заменить существующие данные или добавить к ним новые.

Во время выполнения задача передачи объектов SQL Server подключается к исходным и целевым серверам с помощью двух диспетчеров соединений SMO. Диспетчеры соединений SMO настраиваются отдельно от задачи "Передача объектов SQL Server", а затем ссылаются на задачу "Передача объектов SQL Server". Диспетчеры соединений SMO определяют сервер и режим проверки подлинности, используемый для доступа к серверу. Дополнительные сведения см. в статье SMO Connection Manager.

Свойства могут быть заданы с помощью конструктора SSIS или программным путем.

Дополнительные сведения о свойствах, которые можно задать в конструкторе служб SSIS, щелкните следующий раздел:

Дополнительные сведения о настройке этих свойств в конструкторе служб SSIS см. в следующем разделе:

Настройка задачи «Передача объектов SQL Server» программными средствами

Дополнительные сведения об установке этих свойств программными средствами см. в следующем разделе.

Редактор задачи «Передача объектов SQL Server» (страница «Общие»)

Используйте страницу "Общие " диалогового окна редактора задач "Передача объектов SQL Server", чтобы назвать и описать задачу "Передача объектов SQL Server".

Примечание.

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

Параметры

Имя
Введите уникальное имя задачи передачи объектов SQL Server. Это имя используется в качестве метки для значка задачи.

Примечание.

Имена задач в пределах пакета должны быть уникальными.

Description
Введите описание задачи "Передача объектов SQL Server".

Редактор задачи «Передача объектов SQL Server» (страница «Объекты»)

Используйте страницу "Объекты" диалогового окна "Редактор задач передачи объектов SQL Server", чтобы указать свойства для копирования одного или нескольких объектов SQL Server из одного экземпляра SQL Server в другой. Таблицы, представления, хранимые процедуры и определяемые пользователем функции — это несколько примеров объектов SQL Server, которые можно скопировать.

Примечание.

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

Статические параметры

SourceConnection
Выберите в списке диспетчер подключений SMO или нажмите кнопку <Создать подключение...>, чтобы создать подключение к исходному серверу.

SourceDatabase
Выберите базу данных на исходном сервере, из которой будут копироваться объекты.

DestinationConnection
Выберите в списке диспетчер подключений SMO или нажмите <Создать подключение...>, чтобы создать подключение к целевому серверу.

DestinationDatabase
Выберите базу данных на целевом сервере, в которую будут копироваться объекты.

DropObjectsFirst
Выберите, будут ли выбранные объекты удаляться на целевом сервере перед копированием.

IncludeExtendedProperties
Выберите, будут ли включаться расширенные свойства при копировании объектов с исходного сервера на целевой сервер.

CopyData
Выберите, будут ли включаться данные при копировании объектов с исходного сервера на целевой сервер.

ExistingData
Позволяет указать, как данные будут копироваться на целевой сервер. Параметры этого свойства приведены в следующей таблице.

значение Описание
Replace Данные на целевом сервере будут перезаписаны.
Добавить Данные, копируемые с исходного сервера, будут присоединяться к существующим данным на целевом сервере.

Примечание.

Параметр ExistingData доступен только в случае, когда значение CopyData равно True.

CopySchema
Выберите, копируется ли схема во время задачи передачи объектов SQL Server.

Примечание.

CopySchema доступен только для SQL Server.

UseCollation
Выберите, будут ли при передаче объектов включаться параметры сортировки, заданные на исходном сервере.

IncludeDependentObjects
Выберите, будут ли при копировании выбранных объектов каскадно включаться другие зависимые от них объекты.

CopyAllObjects
Выберите, будут ли при выполнении задачи копироваться все объекты заданной базы данных-источника или только выбранные. Установка значения этого параметра в False позволяет выбирать объекты для передачи и приводит к отображению динамических параметров этого раздела CopyAllObjects.

ObjectsToCopy
Раскройте список ObjectsToCopy , чтобы указать объекты, которые следует копировать из базы данных-источника в целевую базу.

Примечание.

ObjectsToCopy доступен только в случае, если значение CopyAllObjects равно False.

Параметры копирования следующих типов объектов поддерживаются только в SQL Server:

Сборки

функции секционирования

схемы секционирования;

Схемы

определяемые пользователем агрегатные функции;

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

коллекции XML-схем

CopyDatabaseUsers
Укажите, следует ли включать в передачу пользователей базы данных.

CopyDatabaseRoles
Укажите, следует ли включать в передачу роли базы данных.

CopySqlServerLogins
Укажите, следует ли включать имена входа SQL Server в передачу.

CopyObjectLevelPermissions
Укажите, следует ли включать в передачу разрешения уровня объекта.

CopyIndexes
Укажите, следует ли включать в передачу индексы.

CopyTriggers
Укажите, следует ли включать в передачу триггеры.

CopyFullTextIndexes
Укажите, следует ли включать в передачу полнотекстовые индексы.

CopyPrimaryKeys
Укажите, следует ли включать в передачу первичные ключи.

CopyForeignKeys
Укажите, следует ли включать в передачу внешние ключи.

GenerateScriptsInUnicode
Укажите, имеют ли сформированные скрипты передачи формат Юникода.

Динамические параметры

CopyAllObjects = False

CopyAllTables
Выберите, будут ли при выполнении задачи копироваться все таблицы заданной базы данных-источника или только выбранные.

TablesList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор таблиц .

CopyAllViews
Выберите, будут ли при выполнении задачи копироваться все представления из заданной базы данных-источника или только выбранные.

ViewsList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор представлений .

CopyAllStoredProcedures
Выберите, будут ли при выполнении задачи копироваться все пользовательские хранимые процедуры из заданной базы данных-источника или только выбранные.

StoredProceduresList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор хранимых процедур .

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

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

CopyAllDefaults
Выберите, будут ли при выполнении задачи копироваться все установленные по умолчанию значения из заданной базы данных-источника или только выбранные.

DefaultsList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор значений по умолчанию .

CopyAllUserDefinedDataTypes
Выберите, будут ли при выполнении задачи копироваться все пользовательские типы данных из заданной базы данных-источника или только выбранные.

UserDefinedDataTypesList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор определяемых пользователем типов данных .

CopyAllPartitionFunctions
Выберите, будут ли при выполнении задачи копироваться все пользовательские функции секционирования из заданной базы данных-источника или только выбранные. Поддерживается только в SQL Server.

PartitionFunctionsList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор функций секционирования .

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

PartitionSchemesList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор схем секционирования .

CopyAllSchemas
Выберите, будут ли при выполнении задачи копироваться все схемы из заданной базы данных-источника или только выбранные. Поддерживается только в SQL Server.

SchemasList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор схем .

CopyAllSqlAssemblies
Выберите, будут ли при выполнении задачи копироваться все сборки SQL из заданной базы данных-источника или только выбранные. Поддерживается только в SQL Server.

SqlAssembliesList
Выберите этот пункт, чтобы открыть диалоговое окно Выбор сборок SQL .

CopyAllUserDefinedAggregates
Выберите, будут ли при выполнении задачи копироваться все пользовательские агрегатные функции из заданной базы данных-источника или только выбранные. Поддерживается только в SQL Server.

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

CopyAllUserDefinedTypes
Выберите, будут ли при выполнении задачи копироваться все определяемые пользователем типы из заданной базы данных-источника или только выбранные. Поддерживается только в SQL Server.

UserDefinedTypes
Выберите этот пункт, чтобы открыть диалоговое окно Выбор определяемых пользователем типов .

CopyAllXmlSchemaCollections
Выберите, будут ли при выполнении задачи копироваться все коллекции XML-схем из заданной базы данных-источника или только выбранные. Поддерживается только в SQL Server.

XmlSchemaCollectionsList
Выберите этот пункт, чтобы открыть диалоговое окно Выбрать коллекции XML-схем .

См. также

Справочник по сообщениям об ошибках служб Integration Services
Задачи служб Integration Services
Редактор задачи «Передача объектов SQL Server» (страница «Общие»)
Страница «Выражения»
Форматы данных для массового экспорта или импорта (SQL Server)
Вопросы безопасности при установке SQL Server