Como comparar dois bancos de dados SQL do Visual Studio

Como comparar dois bancos de dados SQL do Visual Studio

SQL Server database schema comparison results
cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br


O Visual Studio é um aplicativo usado por muitos desenvolvedores e possui diferentes tipos de recursos que podem facilitar o trabalho do desenvolvedor. Entre esses recursos, o Visual Studio oferece aos usuários o recurso para comparar dois SQL
    bancos de dados via Comparação de esquema característica.

Além de comparar o banco de dados do SQL Server localmente ou na rede, o Visual Studio pode conectar e comparar o SQL do Azure
    Banco de dados também. Esse é um recurso interessante, pois facilita o trabalho dos desenvolvedores que estão trabalhando no desenvolvimento do banco de dados e precisa de uma maneira rápida de sincronizar as alterações mais recentes com o QA base de dados,
    em que testes adicionais devem ser feitos antes de passar para a produção.

Recurso Compare esquema no Visual Studio

Para comparar dois bancos de dados SQL com o Visual Studio Comparação de esquema recurso, siga estas etapas:

  1. No menu principal, vá para o Ferramentas -> servidor SQL submenu ->
    Comparação de novo esquema:

    Iniciando nova comparação de esquema para dois bancos de dados SQL do Visual Studio

  2. Isso carregará o SqlSchemaCompare janela de consulta e a primeira coisa que precisa ser feita é
            para selecionar a origem e o destino de suas listas suspensas correspondentes:

    Janela de consulta SqlSchemaCompare no Visual Studio

  3. No canto superior esquerdo da SqlSchemaCompare janela de consulta, localize o
    Selecione fonte lista suspensa e clique no Selecione a fonte
    item:

    Selecione o comando source na lista suspensa Source

    Nota: Se houve algumas comparações de esquema de banco de dados SQL Server anteriores, as fontes de dados serão mostradas neste
            Lista

  4. o Selecionar esquema de origem caixa de diálogo será mostrada e, por padrão, o
    Base de dados opção está selecionada e, abaixo dela, clique no Selecione Connectiobotão n:

    Selecione Conexão na caixa de diálogo Selecionar Esquema de Origem

  5. Isso trará o novo Conectar caixa de diálogo na qual existem duas guias:

    1. História – em que todas as conexões anteriores podem ser vistas e selecionadas:

      Guia Histórico na caixa de diálogo Conectar

    2. Squeaky toy – na qual uma nova conexão pode ser configurada via Local,
      Rede ou Azure lista de fontes que já possam existir ou por
                      fornecendo diretamente Nome do servidor, Autenticação tipo e
      Nome do banco de dados:

      Guia Procurar na caixa de diálogo Conectar

  6. Depois que todas as informações do SQL Server e do banco de dados forem inseridas, clique no ícone Conectar botão:

    Informações de conexão para o SQL Server local na caixa de diálogo Conectar

  7. Depois que todas as informações são carregadas, o Selecionar esquema de origem diálogo será mostrado novamente e aqui
            a Está bem clique no botão para carregar a fonte de dados da fonte:

    Carregando a origem de esquema selecionada

  8. Agora, o mesmo processo da etapa 3) à etapa 7) precisa ser repetido para o Alvo lado, a fim de definir tudo para comparar dois bancos de dados SQL

  9. Depois que os dois lados forem carregados, as fontes de dados serão mostradas no SqlSchemaCompare janela de consulta e
            Antes de iniciar o processo de comparação, há opções que podem ser definidas com um clique no
    Opções botão:

    Janela Iniciando Opções de Comparação de Esquemas

  10. Opções de comparação de esquema janela será aberta e sob o Geral aba,
            várias opções de comparação e sincronização podem ser selecionadas para personalizá-lo. Neste exemplo, o padrão
            configurações serão usadas:

    A guia Geral na janela de opções Comparação de Esquemas

  11. Debaixo de Tipos de Objetos Na guia, os usuários podem selecionar tipos de objetos específicos e seus filhos para
            compare dois bancos de dados SQL. A seleção padrão será usada neste exemplo:

    A guia Tipos de objeto na janela de opções Comparar esquema

  12. Uma vez definidas as opções acima mencionadas e as Está bem é clicado, o botão
    SqlSchemaCompare janela de consulta é exibida novamente e agora o Comparar botão
            pode ser clicado para comparar dois bancos de dados SQL:

    Iniciando a comparação de dois bancos de dados SQL

  13. Uma vez concluído o processo de comparação, os resultados da comparação serão apresentados e haverá dois painéis
            mostrando:

    1. o Resultados painel que contém todos os objetos comparados classificados por ação para o processo de atualização

    2. o Definições de Objeto painel que mostra os scripts SQL de objetos comparados dos bancos de dados SQL de origem e de destino

    Resultados de comparação de esquema de banco de dados do SQL Server

  14. Na parte superior Resultados painel, os objetos são agrupados por ação, que podem ser alterados sob o
    Resultados do grupo para mostrar os resultados açao, esquema ou tipo:

    Agrupe dois resultados de comparação de bancos de dados SQL por ação, esquema ou tipo

    Após a configuração, com base na preferência do usuário, os objetos desejados devem ser verificados antes de iniciar o processo de destino da atualização

  15. Há duas maneiras de enviar alterações para um banco de dados SQL de destino:

    1. Gerar Script – com um clique no Gerar script No botão, um script é gerado e mostrado no painel recém-aberto, cujo nome é baseado no nome do banco de dados de destino:

      Iniciando a geração de um script SQL para atualizar um banco de dados de destino

      Nesse caso, o nome da janela de consulta é AdventureWorks2018_Update2.publish.sql:

      Script SQL gerado para atualizar um banco de dados de destino

      Se necessário, o plano de execução pode ser revisado antes de atualizar um banco de dados SQL de destino, com um clique no Exibir plano de execução estimado botão no canto superior direito do painel recém-aberto e mostrará o Plano de execução painel:

      Examinando o plano de execução antes de executar o script de atualização SQL

      Aqui, como pode ser visto, o plano de execução completo é mostrado, juntamente com os valores de custo da consulta

      Depois que tudo estiver definido e revisado, clique no ícone Executar para executar o script SQL gerado em um banco de dados SQL de destino

      Os resultados da execução podem ser revisados ​​sob o Mensagens painel, para verificar se foi bem-sucedido ou não:

      O painel Mensagens após executar o script de sincronização

      Além disso, os resultados podem ser exportados com um clique no Resultados como , na parte superior da janela de consulta de script gerada, e o usuário pode escolher entre Resultados como Grade, Textoou Arquivo:

      Exportar resultados como grade, texto ou arquivo

      Se o mesmo script SQL precisar ser executado em um banco de dados SQL local diferente, basta selecionar um na lista suspensa:

      Selecionando diferentes bancos de dados do SQL Server na lista suspensa Bancos de Dados

      SQL Server, que possui o mesmo banco de dados de controle de qualidade, isso pode ser feito com um clique no Alterar conexão botão e o mesmo Conectar janela na qual o SQL Server desejado pode ser selecionado, juntamente com um banco de dados SQL que precisa ser atualizado:

      Alterar conexão para executar o script SQL de atualização em um banco de dados diferente do SQL Server

    2. Atualizar – com um clique no Atualizar No botão, o script SQL gerado anteriormente será executado diretamente em um banco de dados SQL de destino:

      Iniciando o processo de atualização em um banco de dados de destino

      Antes da execução do script SQL gerado para atualizar um banco de dados SQL de destino, o diálogo de confirmação será mostrado no qual o sim É necessário clicar no botão para prosseguir:

      Mensagem de confirmação para atualizar um banco de dados de destino

      Após o término do processo de atualização, como pode ser visto na captura de tela abaixo, os resultados da execução podem ser revisados ​​sob o Operações de ferramentas de dados painel e acima dele, sob o Mensagens painel, há detalhes se a execução foi bem-sucedida ou não:

      Resultados do processo de execução

Solução de software de terceiros

Outra ferramenta que pode ser usada para comparar dois bancos de dados SQL é o ApexSQL Diff. Mesmo sendo uma ferramenta independente, pode
    integrar no Visual Studio e no SQL Server Management Studio (SSMS). Além disso, também pode comparar outros dados
    fontes, como: projetos de controle de origem, pastas de script, backups e instantâneos do ApexSQL. Também pode exportar resultados de comparação para diferentes tipos de saída: relatório simples HTML, relatório HTML, relatório Excel e exportação de diferença de esquema XML.

O último, mas não menos importante, pode automatizar e agendar o processo de comparação e sincronização, criando o script de automação como um lote
    arquivo ou um script do PowerShell, para comparar dois bancos de dados SQL com um clique. Dessa forma, o desenvolvedor economiza tempo,
    não executando as mesmas etapas repetidamente, em vez de apenas executar o script de automação criado.

Para comparar dois bancos de dados SQL do Visual Studio com o ApexSQL Diff, siga estas etapas:

  1. Durante a instalação do ApexSQL Diff, no diretório Selecione hosts para integração etapa, somente as versões instaladas do SSMS e do Visual Studio serão
            mostrado, verifique o que será usado:

    Verifique as versões do Visual Studio e do SQL Server Management Studio nas quais o ApexSQL Diff será integrado

  2. Após a conclusão da instalação, execute a versão do Visual Studio na qual o ApexSQL Diff foi integrado

  3. Comparação de esquema submenu será mostrado no menu de contexto do botão direito do mouse Explorador de Objetos do SQL Server ou Server Explorer painel, sob o Definir como fonte ou Definir como destino comandos podem ser selecionados:

    Definir como fonte ou Definir como destino no submenu Comparar esquema

  4. Quando um desses dois comandos é clicado, o Comparação de esquema janela de consulta será mostrada com
            informações carregadas para um banco de dados SQL selecionado:

    Iniciando a janela de Consulta de Comparação de Esquema

  5. O outro lado, o lado de destino, neste caso, pode ser carregado como o primeiro (o lado de origem) com
            o comando no menu de contexto do botão direito do mouse (Definir como destino comando neste caso) ou
            simplesmente digitando as informações diretamente no Comparação de esquema janela de consulta:

    Carregando um banco de dados SQL de destino com o comando Definir como Destino

  6. Opções adicionais de comparação e sincronização podem ser definidas, se o Opções guia é clicado em
            a Comparação de esquema janela de consulta, antes do início da comparação de dois bancos de dados SQL:

    Opções de comparação e sincronização na guia Opções da janela Consulta de comparação de esquemas

  7. Para iniciar a comparação de dois bancos de dados SQL, clique no botão Comparar botão no canto inferior direito
            do Comparação de esquema janela de consulta, que iniciará a ferramenta independente e mostrará os resultados
            na janela principal do aplicativo:

    Resultados de comparação de dois bancos de dados SQL comparados no ApexSQL Diff

  8. Debaixo de Resultados grade, selecione cada objeto, se necessário, para revisar as alterações e verificar as que
            precisa sincronizar no lado do destino. Saiba mais sobre como restringir a comparação e a sincronização de esquemas apenas aos objetos afetados

  9. Para iniciar o processo de sincronização, clique no ícone Sincronizar botão no
    Casa aba:

    Inicie o assistente de sincronização com um clique no botão Sincronizar

  10. o Assistente de sincronização é iniciado e sob o Direção de sincronização
    etapa, a direção do processo de sincronização é mostrada junto com as informações da fonte de dados:

    Etapa de direção da sincronização no assistente de sincronização do ApexSQL Diff

  11. Todos os objetos dependentes serão mostrados e incluídos por padrão no processo de sincronização sob o Dependências degrau:

    Etapa Dependências no assistente de Sincronização do ApexSQL Diff

  12. Quatro ações diferentes podem ser escolhidas, sob o Ações de saída degrau:

    Etapa de ações de saída no assistente de sincronização do ApexSQL Diff

    Como pode ser visto na captura de tela acima, o Criar script de sincronização ação pode
    Salvar script em um arquivo em um local padrão ou em qualquer outro local desejado ou para abrir o
        script de sincronização em Editor integradoou qualquer outro editor que possa ser configurado com um clique em
        a Definições botão no editor caixa de texto. Se a segunda opção estiver selecionada, em
        o fim de Assistente de sincronização, o script de sincronização gerado será mostrado e, a partir de
        lá pode ser revisado, editado e executado:

    Script de sincronização gerado aberto no editor integrado do ApexSQL Diff

    Neste exemplo, o Sincronize agora ação será selecionada e o Faça backup do banco de dados antes
            sincronização
    A opção está marcada para criar um backup de um banco de dados de destino no local padrão do SQL Server:

    Sincronize agora a ação com o banco de dados Backup antes da opção de sincronização na etapa Ações de saída

    Com um clique no Mais ações de pré-sincronização No link, são mostradas três opções adicionais que podem ser úteis se um banco de dados SQL de destino sincronizado precisar ser revertido para um estado anterior:

    Opções de pré-sincronização no ApexSQL Diff

  13. A última etapa é revisar uma lista de avisos e ações que serão executadas durante o processo de sincronização:

    Avisos e ações no ApexSQL Diff

    Além disso, um desenvolvedor pode criar o script de automação com um clique no Script de automação botão no canto inferior esquerdo da Assistente de sincronização e salve-o como um script do PowerShell ou como um arquivo em lotes, dependendo da preferência:

    Automatizando comparação e sincronização de dois bancos de dados SQL

    Depois que o script de automação é salvo, a última etapa do Assistente de sincronização será mostrado novamente

  14. Com um clique no Sincronizar , o processo de sincronização de um banco de dados de destino começa:

    Iniciando o processo de sincronização no ApexSQL Diff

  15. Após o término do processo de sincronização, o Resultados O diálogo será mostrado:

    Caixa de diálogo Resultados após o processo concluído de uma sincronização de banco de dados SQL de destino

Conclusão

Ambos, Visual Studio Schema Compare e ApexSQL Diff têm
    boas soluções para comparar dois bancos de dados SQL do Visual Studio, com algumas diferenças e algumas vantagens, como:

  • A Comparação de Esquemas do Visual Studio pode filtrar tipos de objetos (mas não objetos individuais) antes da comparação, enquanto
            O ApexSQL Diff não tem essa opção através do
    Comparação de esquema janela de consulta que é aberta no Visual Studio, enquanto ele pode editar o projeto
            depois e faça um estreitamento adicional dos objetos e uma filtragem mais detalhada

  • Ambas as ferramentas têm muitas opções de comparação e sincronização com um pouco mais no Visual Studio Schema Compare

  • A Comparação de Esquemas do Visual Studio não possui uma opção para fazer backup de um banco de dados de destino antes da sincronização
            processo, enquanto o ApexSQL Diff possui mais de um

  • Suporte para vários tipos de comparação de exportação
            resulta em ApexSQL Diff

  • ApexSQL Diff informa e inclui objetos de banco de dados dependentes

  • Além de comparar dois bancos de dados SQL, o ApexSQL Diff pode comparar outras fontes de dados

  • Por último, mas não menos importante, a automação de todo o processo é um recurso bastante útil no ApexSQL Diff

Nemanja Popovic
Últimas mensagens de Nemanja Popovic (ver todos)

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br
Leia Também  Semana de treinamento gratuito: como eu uso o kit primeiro respondedor - sp_BlitzLock