Tarefa Transferir Objetos do SQL Server

Aplica-se a:SQL Server SSIS Integration Runtime no Azure Data Factory

A tarefa Transferir Objetos do SQL Server transfere um ou mais tipos de objetos para um banco de dados do SQL Server entre instâncias do SQL Server. Por exemplo, a tarefa pode copiar tabelas e procedimentos armazenados. Dependendo da versão do SQL Server usado como fonte, tipos diferentes de objetos estarão disponíveis para cópia. Por exemplo, só um banco de dados do SQL Server inclui esquemas e agregações definidos pelo usuário.

Objetos a serem transferidos

Funções de servidor, funções e usuários do banco de dados especificado poderão ser copiados, bem como as permissões para os objetos transferidos. Copiando os usuários, as funções e as permissões associados juntamente com os objetos, os objetos transferidos ficarão imediatamente operáveis no servidor de destino.

A tabela a seguir lista os tipos de objetos que podem ser copiados.

Objeto
Tabelas
Exibições
Procedimentos armazenados
Funções definidas pelo usuário
Padrões
Tipos de dados definidos pelo usuário
Funções de partição
Esquemas de partição
Esquemas
Assemblies
Agregações definidas pelo usuário
Tipos definidos pelo usuário
Coleção de esquema XML

Os UDTs (Tipos Definidos pelo Usuário) criados em uma instância do SQL Server têm dependências em assemblies CLR (Common Language Runtime). Se você usar a tarefa Transferir Objetos do SQL Server para transferir UDTs, terá de configurar a tarefa para transferir objetos dependentes. Para transferir objetos dependentes, defina a propriedade IncludeDependentObjects como True.

Opções de tabela

Ao copiar tabelas, você poderá indicar os tipos de itens relacionados a tabelas a serem incluídos no processo de cópia. Os seguintes tipos de itens poderão ser copiados com a tabela relacionada:

  • Índices

  • Gatilhos

  • Índices de texto completo

  • Chaves primárias

  • Chaves estrangeiras

Você também poderá indicar que o script gerado pela tarefa tenha o formato Unicode.

Opções de destino

Você pode configurar a tarefa Transferir Objetos do SQL Server para incluir nomes de esquema, dados, propriedades estendidas de objetos transferidos e objetos dependentes na transferência. Se forem copiados dados, ela poderá substituir ou anexar dados existentes.

Algumas opções só se aplicam ao SQL Server. Por exemplo, somente o SQL Server dá suporte a esquemas.

Opções de segurança

A tarefa Transferir Objetos do SQL Server pode incluir usuários em nível de banco de dados do SQL Server e funções da fonte, logons SQL Server e permissões para objetos transferidos. Por exemplo, a transferência pode incluir as permissões nas tabelas transferidas.

Transferir objetos entre instâncias do SQL Server

A tarefa Transferir Objetos do SQL Server dá suporte a uma origem e a um destino do SQL Server .

Eventos

A tarefa ativa um evento de informações que informa o objeto transferido e um evento de aviso quando um objeto é substituído. Um evento de informações também é ativado para ações como o truncamento de tabelas de banco de dados.

A tarefa Transferir Objetos do SQL Server não informa progresso incremental da transferência do objeto; informa somente conclusão 0% e 100 % .

Valor de execução

O valor de execução armazenado na propriedade da tarefa ExecutionValue retorna o número de objetos transferidos. Ao atribuir uma variável definida pelo usuário à propriedade ExecValueVariable da tarefa Transferir Objetos do SQL Server, as informações sobre a transferência do objeto podem ser disponibilizadas para outros objetos do pacote. Para obter mais informações, confira Variáveis do SSIS (Integration Services) e Usar variáveis em pacotes.

Entradas de log

A tarefa Transferir Objetos do SQL inclui as seguintes entradas de log personalizadas:

  • TransferSqlServerObjectsTaskStartTransferringObjects Essa entrada de log informa que a transferência foi iniciada. A entrada do log contém a hora de início.

  • TransferSqlServerObjectsTaskFinishedTransferringObject Essa entrada de log informa que a transferência foi concluída. A entrada do log contém a hora de término.

Além disso, uma entrada de log para um evento OnInformation informa o número de objetos dos tipos de objeto selecionados para transferência, o número de objetos transferidos e ações como truncamento de tabelas quando são transferidos dados com tabelas. Uma entrada de log para o evento OnWarning é gravada para cada objeto de destino que é substituído

Segurança e permissões

O usuário deve ter permissão para procurar objetos no servidor de origem e deve ter permissão para cancelar e criar objetos no servidor de destino; além disso, o usuário deve ter acesso ao banco de dados especificado e aos objetos do banco de dados.

Configuração da tarefa Transferir Objetos do SQL Server

A tarefa Transferir Objetos do SQL Server pode ser configurada para transferir todos os objetos, todos os objetos de um tipo ou somente objetos especificados de um tipo. Por exemplo, você pode escolher copiar somente tabelas selecionadas no banco de dados AdventureWorks.

Se a tarefa Transferir Objetos do SQL Server transferir tabelas, você poderá especificar os tipos de objetos relacionados à tabela a serem copiados com as tabelas. Por exemplo, você poderá especificar que as chaves primárias sejam copiadas com as tabelas.

Para aprimorar a funcionalidade dos objetos transferidos, você pode configurar a tarefa Transferir Objetos do SQL Server para incluir nomes de esquema, dados, propriedades estendidas de objetos transferidos e objetos dependentes na transferência. Ao copiar os dados, você poderá especificar se os dados existentes deverão ser substituídos ou anexados.

No tempo de execução, a tarefa Transferir Objetos do SQL Server faz a conexão com os servidores de origem e destino usando dois gerenciadores de conexões SMO. Os gerenciadores de conexões SMO são configurados separadamente da tarefa Transferir Objetos do SQL Server e referenciadas na tarefa Transferir Objetos do SQL Server . Os gerenciadores de conexões SMO especificam o servidor e o modo de autenticação a serem usados ao acessar o servidor. Para obter mais informações, consulte SMO Connection Manager.

Você pode definir propriedades pelo Designer do SSIS ou programaticamente.

Para obter mais informações sobre as propriedades que podem ser definidas no SSIS Designer, clique no tópico a seguir:

Para obter mais informações sobre como definir essas propriedades no SSIS Designer, clique no tópico a seguir:

Configuração programática da tarefa Transferir Objetos do SQL Server

Para obter mais informações sobre como definir essas propriedades programaticamente, clique no tópico a seguir:

Editor da Tarefa Transferir Objetos do SQL Server (página Geral)

Use a página Geral da caixa de diálogo Editor da Tarefa Transferir Objetos do SQL Server para nomear e descrever a tarefa Transferir Objetos SQL Server .

Observação

É necessário que o usuário que criar a tarefa Transferir Objetos SQL Server tenha as permissões adequadas nos objetos de servidor de origem para selecioná-las para cópia, e permissão para acessar o banco de dados do servidor de destino para o qual os objetos serão transferidos.

Opções

Nome
Digite um nome exclusivo para a tarefa Transferir Objetos SQL Server . Esse nome é usado como rótulo no ícone de tarefa.

Observação

Os nomes das tarefas devem ser exclusivos em um pacote.

Descrição
Digite uma descrição da tarefa Transferir Objetos SQL Server .

Editor da Tarefa Transferir Objetos do SQL Server (página Objetos)

Use a página Objetos da caixa de diálogo Editor da Tarefa Transferir Objetos do SQL Server para especificar propriedades para copiar um ou mais objetos do SQL Server de uma instância do SQL Server para outra. Tabelas, exibições, procedimentos armazenados e funções definidas pelo usuário são alguns exemplos de objetos do SQL Server que você pode copiar.

Observação

O usuário que criar a tarefa Transferir Objetos do SQL Server deve ter permissões suficientes nos objetos do servidor de origem para selecioná-los para cópia, bem como permissão para acessar o banco de dados do servidor de destino no qual os objetos serão transferidos.

Opções estáticas

SourceConnection
Selecione um gerenciador de conexões SMO na lista ou clique em <Nova conexão...> para criar uma nova conexão com o servidor de origem.

SourceDatabase
Selecione o banco de dados no servidor de origem do qual serão copiados os objetos.

DestinationConnection
Selecione um gerenciador de conexões SMO na lista ou clique em <Nova conexão...> para criar uma nova conexão com o servidor de destino.

DestinationDatabase
Selecione o banco de dados no servidor de destino para o qual serão copiados os objetos.

DropObjectsFirst
Selecione se os objetos selecionados serão primeiro descartados no servidor de destino, antes de serem copiados.

IncludeExtendedProperties
Selecione se as propriedades estendidas devem ser incluídas quando os objetos forem copiados da origem para o servidor de destino.

CopyData
Selecione se os dados devem ser incluídos quando os objetos forem copiados da origem para o servidor de destino.

ExistingData
Especifique como os dados serão copiados para o servidor de destino. As opções desta propriedade estão listadas na seguinte tabela:

Valor DESCRIÇÃO
Substituir Os dados no servidor de destino serão substituídos.
Acrescentar Os dados copiados do servidor de origem serão anexados aos dados existentes no servidor de destino.

Observação

A opção ExistingData só ficará disponível quando CopyData for definido como True.

CopySchema
Selecione se o esquema deve ser copiado durante a tarefa Transferir Objetos do SQL Server .

Observação

CopySchema só está disponível para o SQL Server.

UseCollation
Selecione se a transferência de objetos deve incluir a ordenação especificada no servidor de origem.

IncludeDependentObjects
Selecione se a cópia dos objetos selecionados deve ser agrupada em cascata para incluir outros objetos que dependem deles para serem copiados.

CopyAllObjects
Selecione se a tarefa deve copiar todos os objetos no banco de dados de origem especificado ou apenas objetos selecionados. Ao definir essa opção como Falso será possível selecionar os objetos a transferir e exibir as opções dinâmicas na seção CopyAllObjects.

ObjectsToCopy
Expanda ObjectsToCopy para especificar quais objetos devem ser copiados do banco de dados de origem para o banco de dados de destino.

Observação

ObjectsToCopy só ficará disponível quando CopyAllObjects for definido como False.

As opções para copiar os seguintes tipos de objeto têm suporte apenas no SQL Server:

Assemblies

Funções de partição

Esquemas de partição

Esquemas

Agregações definidas pelo usuário

Tipos definidos pelo usuário

Coleções de esquemas XML

CopyDatabaseUsers
Especifique se os usuários do banco de dados devem ser incluídos na transferência.

CopyDatabaseRoles
Especifique se as funções do banco de dados devem ser incluídas na transferência.

CopySqlServerLogins
Especifique se os logons do SQL Server devem ser incluídos na transferência.

CopyObjectLevelPermissions
Especifique se as permissões de nível de objeto devem ser incluídas na transferência.

CopyIndexes
Especifique se os índices devem ser incluídos na transferência.

CopyTriggers
Especifique se os gatilhos devem ser incluídos na transferência.

CopyFullTextIndexes
Especifique se os índices de texto completo devem ser incluídos na transferência.

CopyPrimaryKeys
Especifique se as chaves primárias devem ser incluídas na transferência.

CopyForeignKeys
Especifique se as chaves estrangeiras devem ser incluídas na transferência.

GenerateScriptsInUnicode
Especifique se os scripts de transferência gerados estão em formato Unicode.

Opções dinâmicas

CopyAllObjects = False

CopyAllTables
Selecione se a tarefa deve copiar todas as tabelas no banco de dados de origem especificado ou apenas as tabelas selecionadas.

TablesList
Clique para abrir a caixa de diálogo Selecionar Tabelas .

CopyAllViews
Selecione se a tarefa deve copiar todas as exibições no banco de dados de origem especificado ou apenas as exibições selecionadas.

ViewsList
Clique para abrir a caixa de diálogo Selecionar Exibições .

CopyAllStoredProcedures
Selecione se a tarefa deve copiar todos os procedimentos armazenados definidos pelo usuário no banco de dados de origem especificado ou apenas os procedimentos selecionados.

StoredProceduresList
Clique para abrir a caixa de diálogo Selecionar Procedimentos Armazenados .

CopyAllUserDefinedFunctions
Selecione se a tarefa deve copiar todas as funções definidas pelo usuário no banco de dados de origem especificado ou apenas as funções selecionadas.

UserDefinedFunctionsList
Clique para abrir a caixa de diálogo Selecionar Funções Definidas pelo Usuário .

CopyAllDefaults
Selecione se a tarefa deve copiar todos os padrões no banco de dados de origem especificado ou apenas os padrões selecionados.

DefaultsList
Clique para abrir a caixa de diálogo Selecionar Padrões .

CopyAllUserDefinedDataTypes
Selecione se a tarefa deve copiar todos os tipos de dados definidos pelo usuário no banco de dados de origem especificado ou apenas os tipos de dados selecionados.

UserDefinedDataTypesList
Clique para abrir a caixa de diálogo Selecionar Tipos de Dados Definidos pelo Usuário .

CopyAllPartitionFunctions
Selecione se a tarefa deve copiar todas as funções de partição definidas pelo usuário no banco de dados de origem especificado ou apenas as funções de partição selecionadas. Com suporte apenas no SQL Server.

PartitionFunctionsList
Clique para abrir a caixa de diálogo Selecionar Funções de Partição .

CopyAllPartitionSchemes
Selecione se a tarefa deve copiar todos os esquemas de partição definidos pelo usuário no banco de dados de origem especificado ou apenas os esquemas de partição selecionados. Com suporte apenas no SQL Server.

PartitionSchemesList
Clique para abrir a caixa de diálogo Selecionar Esquemas de Partição .

CopyAllSchemas
Selecione se a tarefa deve copiar todos os esquemas no banco de dados de origem especificado ou apenas os esquemas selecionados. Com suporte apenas no SQL Server.

SchemasList
Clique para abrir a caixa de diálogo Selecionar Esquemas .

CopyAllSqlAssemblies
Selecione se a tarefa deve copiar todos os assemblies do SQL no banco de dados de origem especificado ou apenas os assemblies do SQL selecionados. Com suporte apenas no SQL Server.

SqlAssembliesList
Clique para abrir a caixa de diálogo Selecionar Assemblies do SQL .

CopyAllUserDefinedAggregates
Selecione se a tarefa deve copiar todas as agregações definidas pelo usuário no banco de dados de origem especificado ou apenas as agregações selecionadas. Com suporte apenas no SQL Server.

UserDefinedAggregatesList
Clique para abrir a caixa de diálogo Selecionar Agregações Definidas pelo Usuário .

CopyAllUserDefinedTypes
Selecione se a tarefa deve copiar todos os tipos definidos pelo usuário no banco de dados de origem especificado ou apenas os tipos selecionados. Com suporte apenas no SQL Server.

UserDefinedTypes
Clique para abrir a caixa de diálogo Selecionar Tipos Definidos pelo Usuário .

CopyAllXmlSchemaCollections
Selecione se a tarefa deve copiar todas as coleções de Esquemas XML no banco de dados de origem especificado ou apenas as coleções de esquemas XML selecionadas. Com suporte apenas no SQL Server.

XmlSchemaCollectionsList
Clique para abrir a caixa de diálogo Selecionar Coleções de Esquemas XML .

Consulte Também

Referência de mensagens e erros do Integration Services
Tarefas do Integration Services
Editor da Tarefa Transferir Objetos do SQL Server (página Geral)
Página Expressões
Formatos de dados para importar ou exportar em massa (SQL Server)
Considerações sobre segurança para uma instalação do SQL Server