Uma visão geral das configurações de projeto de banco de dados
Você pode usar o projeto de banco de dados configurações para controlar os aspectos de seu banco de dados e compilar configurações. Essas configurações se encaixam nas seguintes categorias:
Configurações de projeto
Build Events
Referências
Criar
Implantar
As configurações do projeto, eventos de compilação e propriedades de implantação são armazenadas no projeto do banco de dados e compartilhadas por meio do controle de versão.
Observação |
---|
Configurações específicas do usuário são armazenadas na. arquivo de dbproj.User. Configurações específicas do projeto são armazenadas no arquivo .dbproj. |
Configurações de projeto
As configurações na tabela a seguir se aplicam a todas as configurações deste projeto de banco de dados.
Campo |
Valor padrão |
Descrição |
---|---|---|
Versão do projeto |
A versão do SQL Server que você especificou quando criou o projeto de banco de dados. |
Especifica a versão do SQL Server direcionadas com este projeto de banco de dados. |
Agrupamento para o modelo de banco de dados |
Inglês (Estados Unidos) (1033) - CI |
Especifica o padrão que, pelo qual dados são classificados e comparados na Base de regras SQL Server Compact Edition de banco de dados que armazena o modelo de banco de dados. Você deve especificar um valor para essa configuração como próximo ao seu agrupamento de banco de dados de destino possíveis. Talvez você queira diferem por caso. Por exemplo, você poderia usar um agrupamento de maiúsculas e minúsculas para o modelo e um agrupamento de maiúsculas e minúsculas do banco de dados. Você pode substituir o agrupamento padrão dentro das definições de objeto.
Observação
O agrupamento padrão é o mesmo para todas as plataformas.Não altera o valor padrão para coincidir com a localidade atual.Você deve definir manualmente a intercalação padrão para o agrupamento apropriado para sua localidade.
|
Esquema padrão |
dbo |
Especifica o esquema padrão no qual os objetos são criados. Você pode substituir essa configuração quando você altera um ou mais definições de objetos. |
Incluir o nome do esquema em nome do arquivo |
Sim |
Especifica se os nomes de arquivo incluem o esquema como prefixo, por exemplo, dbo.Products.Table.SQL. Se esta caixa de seleção estiver desmarcada, os nomes de arquivo para objetos assumem a forma ObjectName.ObjectType.sql |
Arquivo de propriedades de catálogo |
Properties\CatalogProperties.catalogproperties |
Contém configurações de propriedade detalhadas para o banco de dados de destino. Todas as propriedades coincidir as propriedades de um SQL Server banco de dados. Para obter mais informações, consulte este tópico no site da Microsoft: Propriedades de banco de dados (página de opções). |
Configurações de eventos de compilação
Você pode usar essas configurações para especificar uma linha de comando para executar antes do início da operação de compilação e uma linha de comando para executar após a operação de compilação é concluída.
Campo |
Valor padrão |
Descrição |
---|---|---|
Linha de comando do evento de pré-compilação |
Nenhum |
Especifica a linha de comando para executar antes que o projeto é construído. Clique em Pré-compilação de editar para modificar a linha de comando. |
Linha de comando do evento de pós-compilação |
Nenhum |
Especifica a linha de comando para executar depois que o projeto é construído. Clique em Pós-compilação de editar para modificar a linha de comando. |
Executar o evento pós-compilação |
Na compilação bem-sucedida |
Especifica se a linha de comando pós-compilação deve ser executada sempre, somente se a compilação foi bem-sucedida, ou somente quando a compilação atualizada a saída do projeto (o script de construção). |
Para obter mais informações, consulte Como: Especificar ações personalizadas executadas Pre-Build ou Post-Build e Evento de pré- / caixa de diálogo de linha de comando do evento (projetos de banco de dados) de pós-compilação.
Referências
Você pode usar esta página para definir as variáveis de servidor e banco de dados que estão associadas uma referência entre bancos de dados. Além disso, você pode especificar os valores dessas variáveis. Para obter mais informações, consulte Usar referências em projetos de banco de dados.
Criar configurações
Você pode usar essas configurações para afetar o script de construção e o banco de dados de destino. Essas configurações são específicas para a configuração e plataforma que você especificar, e eles normalmente variam de usuário para usuário.
Campo |
Valor padrão |
Descrição |
Compilar Caminho de Saída |
. \sql\ |
Especifica onde o script de compilação será gerado quando você criar ou implanta o projeto de banco de dados. Se você especificar um caminho relativo, você deve especificá-lo relativo ao caminho de projeto de banco de dados. Se o caminho não existir, ele é criado. |
Construir o nome do arquivo de saída |
DatabaseProjectName. SQL |
Especifica o nome que você deseja atribuir o script que é gerado quando você constrói o projeto de banco de dados. Se você tiver selecionado a gerar automaticamente o nome de arquivo de saída da compilação caixa de seleção, o nome do arquivo é gerado automaticamente substitui qualquer valor que você especificar neste campo. |
Tratar avisos como erros |
Não |
Especifica se um aviso deve fazer com que o processo de compilação e implantação para ser cancelada. Se esta caixa de seleção estiver desmarcada, os avisos são exibidos, mas a continuar o processo de compilação e implantação. Essa configuração é específica para o projeto, e não pelo usuário e é armazenada no arquivo .dbproj. |
Suprimir Avisos |
Em branco |
Especifica uma lista de números, delimitados por vírgulas ou ponto e vírgula, que identificam os avisos são suprimidos. Avisos suprimidos não aparecem no Error List janela e eles não afetam o sucesso de compilação, mesmo se você selecionar o tratar avisos como erros caixa de seleção.
Observação
Também é possível suprimir um tipo de aviso para um arquivo específico, se você não deseja suprimir desse tipo em todo o projeto de banco de dados.Para obter mais informações, consulte Como: Suprimir um ou mais tipos de avisos.
|
Implantar
Você pode usar essas configurações para controlar a implantação de seu projeto de banco de dados.
Campo |
Valor padrão |
Descrição |
Definir as configurações de implantação para |
Minhas configurações de projeto |
Especifica se você deseja modificar as configurações de implantação para o projeto que é compartilhada com outros desenvolvedores ou que você deseja modificar as configurações de seu ambiente de desenvolvimento isolado apenas. |
Ação de implantação |
Criar um script de implantação (. SQL) e implantar banco de dados |
Especifica se você deseja implantar o script. de SQL criado no servidor de destino ou criar o script sem implantá-lo. |
Nome do script de implantação |
ProjectName. SQL |
Especifica o nome que você deseja usar para o script de implantação. |
Conexão de destino |
em branco |
Especifica as informações de conexão para o servidor de banco de dados que você deseja destinar a configuração de compilação especificada. |
Nome do banco de dados de destino |
DatabaseProjectName |
Especifica o nome do banco de dados a ser criado ou atualizado através da conexão que você especificar no campo de conexão de destino. |
Arquivo de configuração de implantação
O arquivo de configuração de implantação contém detalhes que são específicos para cada destino de implantação, como a tabela a seguir descreve.
Campo |
Valor padrão |
Descrição |
Agrupamento de comparação de implantação |
Use o agrupamento do meu projeto. |
Especifica qual agrupamento para usar ao comparar a origem e destino modelos durante a implantação. Se você clicar em usar o agrupamento do meu projeto, o agrupamento de origem é usado. Se você clicar em usar o agrupamento do servidor, e em seguida, o agrupamento de destino é usado. |
Implantar as propriedades do banco de dados |
Sim |
Especifica se as configurações de CatalogProperties.catalogproperties são implantadas quando você implanta o projeto de banco de dados. |
Sempre recriar o banco de dados |
Não |
Especifica se o banco de dados será descartado e recriado em vez de executar uma implantação incremental. Talvez você queira selecionar a caixa de seleção se você deseja executar testes de unidade de banco de dados contra uma implantação de limpeza do banco de dados, por exemplo. Se esta caixa de seleção estiver desmarcada, o banco de dados existente será atualizado em vez de deslocadas e recriadas. |
Bloquear a implantação incremental se poderá ocorrer perda de dados |
Sim |
Especifica se a implantação irá parar se uma atualização causará a perda de dados. Se esta caixa de seleção estiver marcada, as alterações que criariam a perda de dados causam implantação pare com um erro, o que mantém os dados sejam perdidos. Por exemplo, a implantação seria parar se uma coluna de varchar(50) foram alterada para varchar(30).
Observação
Implantação está bloqueada somente se as tabelas onde pode ocorrer perda de dados contêm dados.Implantação continua se nenhum dado será perdido.
|
Execute o script de implantação no modo de usuário único |
Não |
Especifica se o banco de dados deve ser colocado no modo de usuário único durante a implantação. Se você estiver implantando um servidor de banco de dados compartilhado, você deve colocar o banco de dados no modo de usuário único ao implantar as alterações do banco de dados. Essa etapa evita que outros usuários façam alterações enquanto você implanta o projeto. Essa opção não estará disponível se você habilitou a pesquisa de texto completo do As configurações do projeto guia das propriedades do projeto de banco de dados.
Importante
Quando o banco de dados no modo de usuário único, todas as outras conexões existentes no banco de dados são descartadas assim que você implanta as alterações no banco de dados.A cláusula de REVERSÃO imediata é especificada para que as transações pendentes serão encerradas assim que o banco de dados é colocado no modo de usuário único.
|
Fazer backup do banco de dados antes da implantação |
Não |
Especifica se o banco de dados deve ser feito antes de implantá-lo. Se esta caixa de seleção estiver desmarcada, um backup não é executado automaticamente. Se a caixa de seleção estiver marcada, declarações são adicionadas ao script de pré-implantação para fazer backup de seu banco de dados. Uma operação de backup pode ser lenta. Se você estiver criando e implantando em um ambiente de desenvolvimento isolado, você pode decidir não fazer backup do banco de dados antes de construir e implantá-lo.
Importante
Antes de implantar um servidor de produção, você sempre deve fazer backup do banco de dados.Se você não fizer backup do banco de dados automaticamente como parte do processo de compilação e implantação, você deve manualmente backup-lo antes de implantar as alterações.
|
Gerar instruções de SOLTAR para objetos de banco de dados de destino, mas que não estejam no projeto de banco de dados |
Não |
Especifica se os objetos que estão no banco de dados de destino, mas não no projeto de banco de dados deveriam ser eliminados, como parte do script de implantação. Você pode excluir alguns arquivos em seu projeto para remover temporariamente a seu script de compilação. No entanto, convém deixar as versões existentes desses objetos no banco de dados de destino. Esta caixa de seleção não terá efeito se a sempre recriar o banco de dados caixa de seleção estiver marcada, porque o banco de dados será descartado. |
Não usar as instruções de ALTER ASSEMBLY para atualizar os tipos CLR |
Não |
Especifica se as instruções em ALTER ASSEMBLY são usadas para atualizar os tipos do common language runtime (CLR) ou se o objeto que instancia o tipo CLR será em vez disso descartados e recriado quando você implanta as alterações. |
A tabela a seguir descreve as configurações avançadas de implantação.
Campo |
Valor padrão |
Descrição |
AbortOnFirstError |
True |
Especifica se a implantação deve ser cancelada quando o primeiro erro ocorrer. |
BuildtimeContributorsMustExist |
True |
Especifica se os colaboradores de implantação (que foram registrados quando o projeto de banco de dados foi compilação) são necessitam ser registrados quando o projeto é implantado. |
CheckNewConstraints |
True |
Quando as restrições são criadas ou recriadas, especifica se, eles serão criados com a opção NOCHECK por padrão. No final do script de implantação, um bloco de instruções será adicionado que irá verificar todas as restrições como um conjunto. Definindo essa propriedade como True, você pode implantar o seu esquema sem encontrar dados de verificação de erros (devido a uma seleção ou uma restrição de chave estrangeira) no meio do processo de implantação, adiando os dados para o final do seu script de implantação. |
CommentOutSetVarDeclarations |
Falso |
Especifica se a declaração de variáveis de SetVar deve ser comentada no script de implantação gerado. Você pode escolher fazer isso, se você planeja especificar os valores na linha de comando quando você implanta usando uma ferramenta como o SQLCMD.EXE. |
DisableAndReenableDdlTriggers |
True |
Especifica se gatilhos Data Definition Language (DDL) são desabilitados no início do processo de implantação e reabilitados ao final do processo de implantação. |
DropConstraintsNotInSource |
True |
Especifica se restrições que não existem em seu projeto de banco de dados serão removidas do banco de dados de destino ao implantar atualizações a um banco de dados. |
DropIndexesNotInSource |
True |
Especifica se índices que não existem em seu projeto de banco de dados serão removidos do banco de dados de destino ao implantar atualizações a um banco de dados. |
EnforceMinimalDependencies |
Falso |
Especifica se os corpos dos procedimentos, funções escalares e funções com valor de tabela são analisados e interpretados. Se você habilitar essa configuração, dependências dentro de corpos não são identificadas, mas as alterações na definição do objeto serão identificadas. Definindo essa opção como True, você pode melhorar o desempenho, mas as dependências perdidas podem causar problemas quando você implanta. |
GenerateDeployStateChecks |
True |
Especifica se instruções são geradas no script de implantação para verificar que o nome do banco de dados e o nome do servidor coincidem com os nomes especificados no projeto de banco de dados. |
IgnoreAnsiNulls |
Falso |
Especifica se diferenças na configuração ANSI Nulls devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreAuthorizer |
Falso |
Especifica se diferenças no Authorizer devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreColumnCollation |
Falso |
Especifica se diferenças nos agrupamentos de colunas devem ser ignorados ou atualizados ao implantar atualizações ao banco de dados. |
Ser |
Falso |
Especifica se diferenças nos comentários devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreCryptographicProviderFilePath |
Falso |
Especifica se diferenças no caminho de arquivo para o provedor criptográfico devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreDdlTriggerOrder |
Falso |
Especifica as diferenças na ordem de disparadores de linguagem de definição de dados (DDL) devem ser ignoradas ou atualizadas quando você implantar atualizações em um servidor ou banco de dados. |
IgnoreDdlTriggerState |
Falso |
Especifica se diferenças no estado habilitado ou desabilitado de gatilhos Data Definition Language (DDL) devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreDefaultSchema |
Falso |
Especifica se a configuração de esquema padrão do usuário deve ser atualizada, se for diferente, ao implantar atualizações em um banco de dados. |
IgnoreDmlTriggerOrder |
Falso |
Especifica se diferenças na ordem de gatilhos Data Manipulation Language (DML) devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreDmlTriggerState |
Falso |
Especifica se diferenças no estado habilitado ou desabilitado de gatilhos DML devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreExtendedProperties |
Falso |
Especifica se diferenças nas propriedades estendidas devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreFilegroupPlacement |
True |
Especifica se diferenças no posicionamento de objetos em grupos de arquivos devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreFillFactor |
True |
Especifica se diferenças no fator de preenchimento para armazenamento de índices devem ser ignoradas ou se um aviso deve ser emitido ao implantar atualizações ao banco de dados. |
IgnoreIdentitySeed |
Falso |
Especifica se diferenças na semente para uma coluna identidade devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreIncrement |
Falso |
Especifica se diferenças no incremento para uma coluna identidade devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreIndexOptions |
Falso |
Especifica se diferenças nas opções de índice devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreIndexPadding |
True |
Especifica se diferenças no preenchimento de índices devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreKeywordCasing |
True |
Especifica se diferenças na capitalização de palavras-chave devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreLockHintsOnIndexes |
Falso |
Especifica se diferenças nas dicas de bloqueio em índices devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreLoginSids |
Falso |
Especifica se diferenças no número de identificação de segurança (SID) devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreNotForReplication |
Falso |
Especifica as diferenças na configuração NOT FOR REPLICATION devem ser ignoradas ou atualizadas ao implantar atualizações em um banco de dados. |
IgnoreObjectPlacementOnPartitionScheme |
True |
Especifica se diferenças no mapeamento de partições para uma tabela particionada ou índice para grupos de arquivos devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnorePartitionSchemes |
Falso |
Especifica se diferenças em esquemas de partição e funções devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnorePermissions |
Falso |
Especifica se diferenças nas permissões devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreQuotedIdentifiers |
Falso |
Especifica se diferenças na configuração de identificadores entre aspas devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreRoleMembership |
Falso |
Especifica se diferenças na associação de função de logins devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreRouteLifetime |
True |
Especifica se diferenças na quantidade de tempo que o SQL Server mantém a rota na tabela de roteamento devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreSemicolonBetweenStatements |
True |
Especifica se diferenças na ponto e vírgula entre Transact-SQL instruções serão ignoradas ou atualizadas quando você implanta atualizações para um banco de dados. |
IgnoreStatisticsSample |
True |
Especifica se diferenças no exemplo usado para CREATE STATISTICS serão ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreTableOptions |
Falso |
Especifica se diferenças nas opções de tabela serão ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreUserSettingsObjects |
Falso |
Especifica se diferenças nos objetos de configuração de usuário serão ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreWhitespace |
True |
Especifica se diferenças em espaços em branco serão ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreWithNocheckOnCheckContraints |
Falso |
Especifica se diferenças no valor da cláusula WITH NOCHECK para restrições de verificação serão ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IgnoreWithNocheckOnForeignKeys |
Falso |
Especifica se diferenças no valor da cláusula WITH NOCHECK para chaves estrangeiras serão ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
IncludeTransactionalScripts |
Falso |
Especifica se instruções transacionais devem ser usados onde for possível ao implantar ao banco de dados. |
ScriptDatabaseCollation |
True |
Especifica se diferenças no agrupamento do banco de dados devem ser ignoradas ou atualizadas ao implantar atualizações ao banco de dados. |
TreatVerificationErrorsAsWarnings |
Falso |
Especifica se os erros encontrados durante a verificação de implantação devem ser tratados como avisos. A verificação é executada contra o plano de implantação gerado antes que o plano é executado no seu banco de dados de destino. Verificação de plano detecta problemas como, por exemplo, a perda de objetos somente de destino, como, por exemplo, índices, o que devem ser eliminados para fazer uma alteração. Verificação também irá detectar situações onde existem devido a uma referência a um projeto composto de dependências, como, por exemplo, uma tabela ou modo de exibição, mas não existem no banco de dados de destino. Você pode optar por fazer isso para obter uma lista completa de todos os problemas de implantação, em vez de implantação interromper no primeiro erro. |
UnmodifiableObjectWarnings |
True |
Especifica se avisos devem ser gerados quando diferenças forem encontradas em objetos que não podem ser modificados, por exemplo, se o tamanho de arquivo ou caminho de arquivo for diferente para um arquivo. |
VerifyDeployment |
True |
Especifica se as verificações devem ser executadas antes da implantação irá parar a implantação, se os problemas estão presentes podem bloquear a implantação bem-sucedida. Por exemplo, a implantação pode parar se você tiver chaves estrangeiras do banco de dados de destino que não existem no projeto de banco de dados e o que causará erros quando você implanta. |
Consulte também
Tarefas
Como: Definir as configurações de compilação para o banco de dados e projetos de servidor
Como: Definir as configurações de implantação para o banco de dados e projetos de servidor
Como: Construir um projeto de banco de dados para gerar um esquema compilado (.dbschema) o arquivo
Como: Implantar alterações em bancos de dados novos ou existentes
Demonstra Passo a passo: Criar e implantar um novo banco de dados com versão controlada
Demonstra Passo a passo: Implantar alterações em um banco de dados existente do controle de versão
Como: Suprimir um ou mais tipos de avisos
Como: Definir variáveis para projetos de banco de dados