Tarefa Transferir Objetos do SQL Server

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 agregados definidos pelo usuário.

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 AdventureWorks2008R2.

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.

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.

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 Gerenciador de conexões SMO.

Objetos a serem transferidos

A tabela a seguir lista os tipos de objetos que podem ser copiados. A coluna de versão identifica a versão do SQL Server que a tarefa pode usar como fonte ao incluir o tipo de objeto em uma transferência.

Objeto

Versão

Tabelas

SQL Server 2000 ou SQL Server

Exibições

SQL Server 2000 ou SQL Server

Procedimentos armazenados

SQL Server 2000 ou SQL Server

Funções definidas pelo usuário

SQL Server 2000 ou SQL Server

Padrões

SQL Server 2000 ou SQL Server

Tipos de dados definidos pelo usuário

SQL Server 2000 ou SQL Server

Funções de partição

Somente SQL Server

Esquemas de partição

Somente SQL Server

Esquemas

Somente SQL Server

Assemblies

Somente SQL Server

Agregados definidos pelo usuário

Somente SQL Server

Tipos definidos pelo usuário

Somente SQL Server

Coleção de esquema XML

Somente SQL Server

Tipos de dados definidos pelo usuário criados em uma instância do SQL Server 2000 são baseados nos tipos de dados do sistema do SQL Server 2000. Quando transferidos para o SQL Server, esses tipos de dados definidos pelo usuário são criados com os tipos de dados do sistema do SQL Server e salvos como tipos de dados com alias. Para obter mais informações sobre tipos de dados no SQL Server, consulte Tipos de dados (Mecanismo de Banco de Dados).

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.

Transferindo objetos entre instâncias do SQL Server

A tarefa Transferir Objetos do SQL Server dá suporte a uma origem e um destino que sejam um SQL Server 2000 ou um SQL Server. Não há nenhuma restrição quanto à versão a ser usada como origem ou destino.

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 Servidor SQL, as informações sobre a transferência do objeto podem ser disponibilizadas para outros objetos do pacote. Para obter mais informações, consulte Variáveis do Integration Services e Usando 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.

  • TransferSqlServerObjectsTaskFinishedTransferringObjects    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.

Configurando a tarefa Transferir Objetos do SQL Server

Você pode definir propriedades com o SSIS Designer ou programaticamente.

Para obter mais informações sobre as propriedades que podem ser definidas no Designer do SSIS, clique em um dos seguintes tópicos:

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

Configurando a tarefa Transferir Objetos do SQL Server Programaticamente

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

Ícone do Integration Services (pequeno) Fique atualizado com o Integration Services

Para obter os mais recentes downloads, artigos, exemplos e vídeos da Microsoft, bem como soluções exclusivas da comunidade, visite a página do Integration Services no MSDN ou TechNet:

Para receber uma notificação automática das atualizações, assine os feeds RSS disponíveis na página.