Propriedades de projetos SQL
Aplica-se a:SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada SQL do Azure
banco de dados SQL no Microsoft Fabric
Além do conteúdo dos arquivos de .sql
individuais, os projetos de banco de dados SQL contêm propriedades que definem o comportamento do projeto e as configurações no nível do banco de dados. Essas propriedades são armazenadas no arquivo .sqlproj
e podem ser definidas editando o arquivo .sqlproj
diretamente. Algumas ferramentas de projetos SQL, como Visual Studio e VS Code, fornecem acesso para editar algumas ou muitas das propriedades do projeto em uma interface gráfica do usuário. Este artigo fornece uma visão geral das propriedades que você pode definir para projetos de banco de dados SQL.
As propriedades de projetos SQL mais usadas incluem:
- Plataforma de destino (DSP)
- Análise de código
- DacApplicationName e DacVersion
- Esquema padrão
- TreatTSqlWarningsAsErrors
Desativar alterações nas opções do banco de dados
Durante a publicação do projeto SQL, as alterações nas opções do banco de dados são roteirizadas com base nos valores definidos nas propriedades do projeto e nos valores padrão do projeto. Para evitar que as opções de banco de dados sejam modificadas durante a publicação, usando uma ferramenta como SqlPackage CLI ou Visual Studio, defina a propriedade de publicação ScriptDatabaseOptions
para false. Essa configuração também pode ser incorporada em um perfil de publicação.
Propriedades comuns do projeto
A propriedade da plataforma de destino especifica a versão do SQL Server a que o projeto se destina. A propriedade DSP
é usada para definir a plataforma de destino para o projeto SQL. Mais informações sobre a plataforma de destino podem ser encontradas no artigo plataforma de destino.
A análise de código pode melhorar drasticamente o processo contínuo de integração e implantação, detetando possíveis problemas no início do ciclo de vida do desenvolvimento. Saiba mais sobre como ativar a análise de código e incluir regras personalizadas no artigo análise de código SQL.
Propriedades do aplicativo da camada de dados
As propriedades a seguir são usadas para definir o DAC (aplicativo da camada de dados) que é criado quando o projeto SQL é criado.
-
DacApplicationName: O nome do aplicativo da camada de dados
.dacpac
. O valor padrão é o nome do projeto. -
DacDescription: Uma descrição opcional do aplicativo da camada de dados
.dacpac
. -
DacVersion: A versão do aplicativo da camada de dados
.dacpac
. O valor padrão é1.0.0.0
.
Esquema padrão
A propriedade DefaultSchema
define o esquema padrão para o projeto SQL. Esta propriedade aplica-se a objetos nomeados compostos por uma única parte. O valor padrão é dbo
.
Avisos T-SQL
As propriedades SuppressTSqlWarnings
e TreatTSqlWarningsAsErrors
controlam como os avisos T-SQL são tratados durante a compilação do projeto. A propriedade SuppressTSqlWarnings
suprime avisos T-SQL durante a compilação do projeto, especificada como uma lista separada por vírgulas de números de erro.
A propriedade TreatTSqlWarningsAsErrors
trata os avisos do T-SQL como erros, fazendo com que qualquer aviso do T-SQL falhe na compilação. O valor padrão para TreatTSqlWarningsAsErrors
é False
.
Exemplo de uso das propriedades do projeto
O exemplo a seguir mostra como definir as propriedades CompatibilityMode
, IsChangeTrackingOn
e TreatTSqlWarningsAsErrors
em um arquivo de projeto SQL. A propriedade CompatibilityMode
está definida como 130
, a propriedade IsChangeTrackingOn
está definida como True
e a propriedade TreatTSqlWarningsAsErrors
está definida como True
. A propriedade TreatSqlWarningsAsErrors
só é definida como True
na configuração de compilação Release
.
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build">
<Sdk Name="Microsoft.Build.Sql" Version="1.0.0-rc1" />
<PropertyGroup>
<Name>AdventureWorks</Name>
<DSP>Microsoft.Data.Tools.Schema.Sql.Sql160DatabaseSchemaProvider</DSP>
<ModelCollation>1033, CI</ModelCollation>
<ProjectGuid>{00000000-0000-0000-0000-000000000000}</ProjectGuid>
<RunSqlCodeAnalysis>true</RunSqlCodeAnalysis>
<CompatibilityMode>130</CompatibilityMode>
<IsChangeTrackingOn>True</IsChangeTrackingOn>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Release'">
<TreatTSqlWarningsAsErrors>True</TreatTSqlWarningsAsErrors>
</PropertyGroup>
</Project>
Todas as propriedades do projeto
Algumas propriedades do projeto estão associadas a opções de banco de dados que se aplicam apenas a bancos de dados do SQL Server ou versões específicas do SQL Server. Antes de incluir uma propriedade de projeto em seu projeto, revise a documentação associada para a opção de banco de dados para entender o comportamento da propriedade e os requisitos do banco de dados.
Propriedade |
DATABASE SET opção |
Rótulo de UI | Valor padrão do projeto SQL | Valores permitidos |
---|---|---|---|---|
Permitir Isolamento de Instantâneos | ALLOW_SNAPSHOT_ISOLATION |
Configurações da base de dados, Operacional, Permitir isolamento de foto instantânea | Falso | {Verdadeiro|Falso} |
AnsiNulls | ANSI_NULLS |
Configurações do banco de dados, SET ANSI_NULLS | Verdadeiro | {Verdadeiro|Falso} |
AnsiPadding | ANSI_PADDING |
Configurações do banco de dados, SET ANSI_PADDING | Verdadeiro | {Verdadeiro|Falso} |
AnsiAvisos | ANSI_WARNINGS |
Configurações do banco de dados, SET ANSI_WARNINGS | Verdadeiro | {Verdadeiro|Falso} |
ArithAbort | ARITHABORT |
Configurações do banco de dados, SET ARITHABORT | Verdadeiro | {Verdadeiro|Falso} |
Fechar Automaticamente | AUTO_CLOSE |
Configurações do banco de dados, Operacional, Fechamento automático | Falso | {Verdadeiro|Falso} |
AutoCreateStatistics | AUTO_CREATE_STATISTICS |
Configurações de banco de dados, Operacional, Criação automática de estatísticas | Verdadeiro | {Verdadeiro|Falso} |
AutoShrink | AUTO_SHRINK |
Configurações de banco de dados, Operacional, Encolhimento automático | Falso | {Verdadeiro|Falso} |
Atualização Automática de Estatísticas | AUTO_UPDATE_STATISTICS |
Configurações do banco de dados, Operacional, Estatísticas de atualização automática | Verdadeiro | {Verdadeiro|Falso} |
AtualizarEstatísticasAutomaticamenteAssíncronamente | AUTO_UPDATE_STATISTICS_ASYNC |
Configurações de banco de dados, Operacional, Estatísticas de atualização automática de forma assíncrona | Falso | {Verdadeiro|Falso} |
Período de Retenção de Rastreio de Alterações | CHANGE_RETENTION |
Configurações do banco de dados, Operacional, Período de retenção de controle de alterações | 2 | {inteiro} |
ChangeTrackingRetentionUnit | CHANGE_RETENTION |
Configurações do banco de dados, Operacional, Período de retenção de controle de alterações | MINUTOS (if "MINUTES" refers to time) | {DIAS|HORAS|MINUTOS} |
CloseCursorOnCommitEnabled | CURSOR_CLOSE_ON_COMMIT |
Configurações do banco de dados, Operacional, Fechar o cursor na confirmação ativada | Falso | {Verdadeiro|Falso} |
Modo de Compatibilidade | COMPATIBILITY_LEVEL |
Configurações do banco de dados, Nível de compatibilidade | {100|110|120|130|140|150|160|170}1 | |
ConcatNullYieldsNull | CONCAT_NULL_YIELDS_NULL |
Configurações do banco de dados, SET CONCAT_NULL_YIELDS_NULL | Verdadeiro | {Verdadeiro|Falso} |
Contenção | CONTAINMENT |
Configurações do banco de dados, Contenção | NENHUM | {NENHUM|PARCIAL} |
DacApplicationName | Propriedades da aplicação de camada de dados (.dacpac ), nome |
O nome do projeto | {string} | |
DacDescrição | Propriedades do aplicativo da camada de dados (.dacpac ), descrição |
{string} | ||
DacVersion | Propriedades do aplicativo da camada de dados (.dacpac ), versão |
1.0.0.0 | {número da versão semântica} | |
Acesso ao banco de dados | db_user_access_option |
Configurações do banco de dados, Acesso ao banco de dados | MULTIUTILIZADOR | {MULTI_UTILIZADOR|UTILIZADOR ÚNICO|UTILIZADOR RESTRITO} |
Encadeamento de Bases de Dados | DB_CHAINING |
Configurações de banco de dados, Encadeamento de banco de dados | Falso | {Verdadeiro|Falso} |
DatabaseDefaultFulltextLanguage | DEFAULT_FULLTEXT_LANGUAGE |
Configurações do banco de dados, Idioma de texto completo padrão | 1033 | {idioma inteiro ID} |
DatabaseDefaultLanguage | DEFAULT_LANGUAGE |
Configurações do banco de dados, idioma padrão | 1033 | {inteiro ID de idioma} |
DatabaseState | db_state_option |
Configurações do banco de dados, Estado do banco de dados | ONLINE | {ONLINE|OFFLINE} |
DbScopedConfigLegacyCardinalityEstimation |
LEGACY_CARDINALITY_ESTIMATION
2 |
Configuração do escopo do banco de dados, estimativa de cardinalidade herdada | Desligado | {Desligado|Ligado} |
ConfiguraçãoDbComEscopoHerdadoEstimativaSecundáriaDeCardinalidade |
LEGACY_CARDINALITY_SECONDARY_ESTIMATION
2 |
Configuração de escopo da base de dados, estimativa de cardinalidade legada para cenários secundários | Primário | {Primário|Desligado|Ligado} |
Para verificação de parâmetros configurados na base de dados. |
PARAMETER_SNIFFING
2 |
Configuração do escopo do banco de dados, deteção de parâmetros | Em | {Ligado|Desligado} |
BDScopeConfigParâmetroDeteçãoSecundário |
PARAMETER_SNIFFING_SECONDARY
2 |
Configuração do escopo do banco de dados, detecção de parâmetros para instâncias secundárias | Primário | {Primário|Desligar|Ligado} |
DbScopedConfigOptimizerHotfixes |
OPTIMIZER_HOTFIXES
2 |
Configuração do escopo do banco de dados, correções urgentes do otimizador de consulta | Desligado | {Desligado|Ligado} |
DbScopedConfigOptimizerHotfixesSecundário |
OPTIMIZER_HOTFIXES_SECONDARY
2 |
Configuração do escopo do banco de dados, hotfixes do otimizador de consulta para secundário | Primário | {Primário|Desligado|Ligado} |
DbScopedConfigMaxDOP |
MAXDOP
2 |
Configuração do escopo do banco de dados, graus máximos de paralelismo | 0 | {inteiro} |
DbScopedConfigMaxDOPSecondary |
MAXDOP_SECONDARY
2 |
Configuração do escopo do banco de dados, graus máximos de paralelismo para secundário | {inteiro} | |
DbScopedConfigDWCompatibilityLevel |
DW_COMPATIBILITY_LEVEL
2 |
Configuração do escopo do banco de dados, nível de compatibilidade DW | 0 | {0|10|20|30|40|50|9000}3 |
DefaultCollation |
COLLATE
4 |
Configurações do banco de dados, agrupamento do banco de dados | SQL_Latin1_General_CP1_CI_AS | Consulte de nome de agrupamento do SQL Server para obter valores válidos. |
Cursor Padrão | CURSOR_DEFAULT |
Configurações do banco de dados, Operacional, Cursor padrão | Locais | {Global|Local} |
Grupo de Ficheiros Padrão | Configurações do banco de dados, Operacional, Grupo de arquivos padrão | PRIMÁRIO | {string} | |
DefaultFileStreamFilegroup | Configurações da base de dados, Operacional, Grupo de arquivos FileStream padrão | {string} | ||
DefaultSchema | Configuração geral do projeto, esquema padrão | DBO | {string} | |
Durabilidade atrasada | DELAYED_DURABILITY |
Configurações de banco de dados, Operacional, Durabilidade atrasada de transações | PESSOAS COM DEFICIÊNCIA | {DESATIVADO|PERMITIDO|FORÇADO} |
Processamento Digital de Sinais | A plataforma de destino para o projeto SQL | Consulte a plataforma de destino para obter valores válidos. | ||
AtivarPesquisaTextoIntegral | Configurações do banco de dados, Ativar pesquisa de texto completo | Verdadeiro | {Verdadeiro|Falso} | |
Nome do Diretório de Fluxo de Ficheiro |
FILESTREAM (DIRECTORY_NAME ) |
Configurações do banco de dados, nome do diretório FILESTREAM | {string} | |
A prioridade do corretor é respeitada? | HONOR_BROKER_PRIORITY |
Configurações do banco de dados, prioridade do corretor respeitada | Falso | {Verdadeiro|Falso} |
Está a Limpeza Automática de Rastreamento de Mudanças Ativada? | CHANGE_TRACKING |
Configurações de banco de dados, Operacional, Limpeza automática de controle de alterações | Verdadeiro | {Verdadeiro|Falso} |
RastreamentoDeAlteraçõesEstáAtivo | CHANGE_TRACKING |
Configurações do banco de dados, Operacional, Controle de alterações | Falso | {Verdadeiro|Falso} |
EncriptaçãoAtivada? | ENCRYPTION |
Configurações do banco de dados, Criptografia habilitada | Falso | {Verdadeiro|Falso} |
IsLedgerOn |
LEDGER
4 |
Configurações do banco de dados e ativação do Livro Razão | Falso | {Verdadeiro|Falso} |
IsNestedTriggersOn | NESTED_TRIGGERS |
Configurações do banco de dados, Gatilhos aninhados habilitados | Verdadeiro | {Verdadeiro|Falso} |
EstáTransformarPalavrasRuídoAtivo | TRANSFORM_NOISE_WORDS |
Configurações do banco de dados, Transformar palavras inúteis | Falso | {Verdadeiro|Falso} |
Otimização de Memória Elevar para Snapshot | MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT |
Configurações de banco de dados, Operacional, Memória otimizada elevar a instantâneo | Falso | {Verdadeiro|Falso} |
Ordenação de Modelos | Configurações do projeto, Agrupamento | 1033,CI | {ID do idioma {integer } {}}, {CI|CS} | |
Acesso a Fluxos de Ficheiro Não Transacionados | NON_TRANSACTED_ACCESS |
Configurações do banco de dados, acesso não transacionado FILESTREAM | DESLIGADO | {DESLIGADO|SOMENTE_LEITURA|COMPLETO} |
NumericRoundAbort | NUMERIC_ROUNDABORT |
Configurações do banco de dados, SET NUMERIC_ROUNDABORT | Falso | {Verdadeiro|Falso} |
Caminho de saída | Configurações de compilação, caminho de saída |
bin\Debug e bin\Release |
{string} | |
Verificação de Página | PAGE_VERIFY |
Configurações do banco de dados, Operacional, Verificação de página | NENHUM | {NENHUM|DETECÇÃO_PAGINA_RASGADA|VERIFICAÇÃO_DE_SOMA} |
Parametrização | PARAMETERIZATION |
Configurações de banco de dados, Parametrização | SIMPLES | {SIMPLES|FORÇADO} |
QueryStoreCaptureMode |
QUERY_STORE (QUERY_CAPTURE_MODE ) |
Configurações do banco de dados, Operacional, Modo de captura do repositório de consultas | TUDO | {DESLIGADO|TUDO|AUTO} |
QueryStoreDesiredState |
QUERY_STORE (OPERATION_MODE ) |
Configurações do banco de dados, Operacional, Modo de operação do repositório de consultas | DESLIGADO | {DESLIGADO|LEITURA_ESCRITA|SOMENTE_LEITURA} |
QueryStoreFlushInterval |
QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS ) |
Configurações do banco de dados, Configurações operacionais, Intervalo de liberação de dados do armazenamento de consultas (segundos) | 900 | {inteiro} |
QueryStoreIntervalLength |
QUERY_STORE (INTERVAL_LENGTH_MINUTES ) |
Configurações do banco de dados, Operacional, Duração do intervalo de armazenamento de consultas (minutos) | 60 | {inteiro} |
QueryStoreMaxPlansPerQuery |
QUERY_STORE (MAX_PLANS_PER_QUERY ) |
Configurações de banco de dados, Operacional, Armazenamento de consultas Máximo de planos por consulta | 200 | {inteiro} |
QueryStoreMaxStorageSize |
QUERY_STORE (MAX_STORAGE_SIZE_MB ) |
Configurações do banco de dados, Operacional, Armazenamento de consultas Tamanho máximo de armazenamento (MB) | 100 | {inteiro} |
QueryStoreStaleQueryThreshold |
QUERY_STORE (STALE_QUERY_THRESHOLD_DAYS ) |
Configurações de banco de dados, Operação, Limite para consultas obsoletas do repositório de consultas (dias) | 367 | {inteiro} |
QuotedIdentifier | QUOTED_IDENTIFIER |
Configurações do banco de dados, SET QUOTED_IDENTIFIER | Verdadeiro | {Verdadeiro|Falso} |
Instantâneo de Leitura Confirmada (ReadCommittedSnapshot) | READ_COMMITTED_SNAPSHOT |
Configurações de banco de dados, Operacional, Ler instantâneo confirmado | Falso | {Verdadeiro|Falso} |
Recuperação | RECOVERY |
Configurações de banco de dados, Operacional, Recuperação | COMPLETO | {COMPLETO|SIMPLES|REGISTO_EM_MASSA} |
RecursiveTriggersEnabled | RECURSIVE_TRIGGERS |
Configurações do banco de dados, Gatilhos recursivos habilitados | Falso | {Verdadeiro|Falso} |
ServiceBrokerOption | SERVICE_BROKER |
Configurações do banco de dados, opções do Service Broker | DisableBroker | {DesativarCorretor|AtivarCorretor|NovoCorretor|ErroCorretorConversas} |
SuprimirTSqlWarnings | Configurações de compilação, Suprimir avisos T-SQL (lista separada por vírgulas de códigos de aviso T-SQL) | {string} | ||
Período Alvo de Recuperação de Tempo | Configurações do banco de dados, operacional, tempo de recuperação alvo (segundos) | Especifica a frequência dos pontos de verificação indiretos por banco de dados. | 60 | {inteiro} |
Unidade de Tempo de Recuperação Alvo | Configurações do banco de dados, Operacional, tempo do gravador de destino | SEGUNDOS | {MINUTOS|SEGUNDOS} | |
TreatTSqlWarningsAsErrors | Configurações de compilação, Tratar avisos T-SQL como erros | Falso | {Verdadeiro|Falso} | |
Confiável | TRUSTWORTHY |
Configurações do banco de dados, Confiável | Falso | {Verdadeiro|Falso} |
Dois Dígitos Ano Limiar | TWO_DIGIT_YEAR_CUTOFF |
Definições do banco de dados, limite para ano de dois dígitos | 2049 | {inteiro} |
Opções de Atualização | db_update_option |
Configurações do banco de dados, Opções de atualização | LEITURA_ESCRITA | {LEITURA_ESCRITA|SOMENTE_LEITURA} |
ValidateCasingOnIdentifiers | Configuração geral do projeto, validar o invólucro dos identificadores | Verdadeiro | {Verdadeiro|Falso} |
- O valor padrão difere com base na edição do mecanismo e nas configurações do servidor.
- Configuração com escopo de banco de dados: opções.
- AUTO é definido com o valor 0.
- Aplica-se apenas como uma opção
CREATE DATABASE
.