Compare BD

De MSTECH wiki
Revisão de 17h50min de 20 de maio de 2016 por Ruz (Discussão | contribs) (Criou página com 'Visual studio Schema Compare File -> new project Templates -> SQL Server -> SQL Server Database Project botão direito no projeto criado -> Schema Compare Clique na engrenag...')

(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para: navegação, pesquisa

Visual studio Schema Compare File -> new project Templates -> SQL Server -> SQL Server Database Project

botão direito no projeto criado -> Schema Compare

Clique na engrenagem, e siga:


General (marcar):

   Include transactional scripts

Object Types (desmarcar):

   Application Roles
   Database Roles
   Extended Properties
   Permissions
   Role Membership
   Rules
   Users

caso o banco tenha muitas mudanças (como o blue monitor), é preciso desmarcar tudo e ir marcando apenas um tipo de schema por vez ------

Aggregate Inline functions partiction functions Scalar-valued functions Table-valued functions

Stored procedures

Synonyms

User-defined Data Types User-defined Table Types User-defined Types (CLR)

gerar scripts na ordem: 1 - Tabelas 2 - Functions 3 - Types 4 - Storeds


Selecione no Dropdown "Select Source" o banco Origem (ou seja, o banco que servirá de modelo, como o banco de dev) marque Database, e encontre o banco, clique em Connect

Selecione no Dropdown "Select Target", o banco Destino (ou seja, o banco em que serão feitas as alterações, como um banco de homologação) marque Database, e encontre o banco, Connect

clique em Compare

Verifique se é necessário retirar alguma coisa, como sinônimos, alterações sem necessidade, etc Clique no pergaminho ao lado do botão Update, chamado Generate Script De preferência, cole este script no sql server, pois pode dar problemas com encoding se colar no bloco de notas, por exemplo.

remover alguns trechos do schema compare do VS:

do início:

setvar DatabaseName "dem_bluemonitor"
setvar DefaultFilePrefix "dem_bluemonitor"
setvar DefaultDataPath "E:\SQL\BDs\"
setvar DefaultLogPath "E:\SQL\Logs\"

GO

on error exit

GO /* Detect SQLCMD mode and disable script execution if SQLCMD mode is not supported. To re-enable the script after enabling SQLCMD mode, execute the following: SET NOEXEC OFF;

  • /
setvar __IsSqlCmdEnabled "True"

GO IF N'$(__IsSqlCmdEnabled)' NOT LIKE N'True'

   BEGIN
       PRINT N'SQLCMD mode must be enabled to successfully execute this script.' ;
       SET NOEXEC ON;
   END

GO USE [$(DatabaseName)]; (também aparece no final. remover) GO