Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Base 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 da aplicação de 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, IsChangeTrackingOne TreatTSqlWarningsAsErrors em um arquivo de projeto SQL. A propriedade CompatibilityMode está definida como 130, a propriedade IsChangeTrackingOn está definida como Truee 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.
| Property |
DATABASE SET opção |
Etiqueta de UI | Valor padrão do projeto SQL | Valores permitidos |
|---|---|---|---|---|
| AllowSnapshotIsolation | ALLOW_SNAPSHOT_ISOLATION |
Configurações da base de dados, Operacional, Permitir isolamento de foto instantânea | False | {True|False} |
| AnsiNulls | ANSI_NULLS |
Configurações do banco de dados, SET ANSI_NULLS | True | {True|False} |
| AnsiPadding | ANSI_PADDING |
Configurações do banco de dados, SET ANSI_PADDING | True | {True|False} |
| AnsiWarnings | ANSI_WARNINGS |
Configurações do banco de dados, SET ANSI_WARNINGS | True | {True|False} |
| ArithAbort | ARITHABORT |
Configurações do banco de dados, SET ARITHABORT | True | {True|False} |
| AutoClose | AUTO_CLOSE |
Configurações do banco de dados, Operacional, Fechamento automático | False | {True|False} |
| AutoCreateStatistics | AUTO_CREATE_STATISTICS |
Configurações de banco de dados, Operacional, Criação automática de estatísticas | True | {True|False} |
| AutoCreateStatisticsIncremental |
AUTO_CREATE_STATISTICS (INCREMENTAL) |
Configurações de banco de dados, Operacional, Criação incremental automática | False | {True|False} |
| AutoShrink | AUTO_SHRINK |
Configurações de banco de dados, Operacional, Encolhimento automático | False | {True|False} |
| AutoUpdateStatistics | AUTO_UPDATE_STATISTICS |
Configurações do banco de dados, Operacional, Estatísticas de atualização automática | True | {True|False} |
| AutoUpdateStatisticsAsynchronously | AUTO_UPDATE_STATISTICS_ASYNC |
Configurações de banco de dados, Operacional, Estatísticas de atualização automática de forma assíncrona | False | {True|False} |
| ChangeTrackingRetentionPeriod | CHANGE_RETENTION |
Configurações do banco de dados, Operacional, Período de retenção de controle de alterações | 2 | {integer} |
| ChangeTrackingRetentionUnit | CHANGE_RETENTION |
Configurações do banco de dados, Operacional, Período de retenção de controle de alterações | MINUTES | {DAYS|HOURS|MINUTES} |
| CloseCursorOnCommitEnabled | CURSOR_CLOSE_ON_COMMIT |
Configurações do banco de dados, Operacional, Fechar o cursor na confirmação ativada | False | {True|False} |
| CompatibilityMode | 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 | True | {True|False} |
| Containment | CONTAINMENT |
Configurações do banco de dados, Contenção | NONE | {NONE|PARTIAL} |
| DacApplicationName | Propriedades da aplicação de camada de dados (.dacpac), nome |
O nome do projeto | {string} | |
| DacDescription | Propriedades da aplicação de camada de dados (.dacpac), descrição |
{string} | ||
| DacVersion | Propriedades da aplicação de nível de dados (.dacpac), versão |
1.0.0.0 | {número da versão semântica} | |
| DatabaseAccess | db_user_access_option |
Configurações do banco de dados, Acesso ao banco de dados | MULTI_USER | {MULTI_USER|SINGLE_USER|RESTRICTED_USER} |
| DatabaseChaining | DB_CHAINING |
Configurações de banco de dados, Encadeamento de banco de dados | False | {True|False} |
| 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 | {idioma inteiro ID} |
| 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 | Off | {Off|On} |
| DbScopedConfigLegacyCardinalitySecondaryEstimation |
LEGACY_CARDINALITY_SECONDARY_ESTIMATION
2 |
Configuração de escopo da base de dados, estimativa de cardinalidade legada para cenários secundários | Primary | {Primary|Off|On} |
| DbScopedConfigParameterSniffing |
PARAMETER_SNIFFING
2 |
Configuração do escopo do banco de dados, deteção de parâmetros | On | {On|Off} |
| DbScopedConfigParameterSniffingSecondary |
PARAMETER_SNIFFING_SECONDARY
2 |
Configuração do escopo do banco de dados, detecção de parâmetros para instâncias secundárias | Primary | {Primary|Off|On} |
| DbScopedConfigOptimizerHotfixes |
OPTIMIZER_HOTFIXES
2 |
Configuração do escopo do banco de dados, correções urgentes do otimizador de consulta | Off | {Off|On} |
| DbScopedConfigOptimizerHotfixesSecondary |
OPTIMIZER_HOTFIXES_SECONDARY
2 |
Configuração no escopo da base de dados, correções do otimizador de consultas para o secundário | Primary | {Primary|Off|On} |
| DbScopedConfigMaxDOP |
MAXDOP
2 |
Configuração do escopo do banco de dados, graus máximos de paralelismo | 0 | {integer} |
| DbScopedConfigMaxDOPSecondary |
MAXDOP_SECONDARY
2 |
Configuração do escopo do banco de dados, graus máximos de paralelismo para secundário | {integer} | |
| 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 o nome de agrupamento do SQL Server para valores válidos. |
| DefaultCursor | CURSOR_DEFAULT |
Configurações do banco de dados, Operacional, Cursor padrão | Local | {Global|Local} |
| DefaultFilegroup | Configurações do banco de dados, Operacional, Grupo de arquivos padrão | PRIMARY | {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} | |
| DelayedDurability | DELAYED_DURABILITY |
Configurações de banco de dados, Operação, Durabilidade diferida das transações | DISABLED | {DISABLED|ALLOWED|FORCED} |
| DSP | A plataforma de destino para o projeto SQL | Consulte a plataforma de destino para obter valores válidos. | ||
| EnableFullTextSearch | Configurações do banco de dados, Ativar pesquisa de texto completo | True | {True|False} | |
| FileStreamDirectoryName |
FILESTREAM (DIRECTORY_NAME) |
Configurações do banco de dados, nome do diretório FILESTREAM | {string} | |
| IsBrokerPriorityHonored | HONOR_BROKER_PRIORITY |
Configurações do banco de dados, prioridade do corretor respeitada | False | {True|False} |
| IsChangeTrackingAutoCleanupOn | CHANGE_TRACKING |
Configurações de banco de dados, Operacional, Limpeza automática do registo de alterações | True | {True|False} |
| IsChangeTrackingOn | CHANGE_TRACKING |
Configurações do banco de dados, Operacional, Controle de alterações | False | {True|False} |
| IsEncryptionOn | ENCRYPTION |
Configurações do banco de dados, Criptografia habilitada | False | {True|False} |
| IsLedgerOn |
LEDGER
4 |
Configurações do banco de dados e ativação do Livro Razão | False | {True|False} |
| IsNestedTriggersOn | NESTED_TRIGGERS |
Configurações do banco de dados, Gatilhos aninhados habilitados | True | {True|False} |
| IsTransformNoiseWordsOn | TRANSFORM_NOISE_WORDS |
Configurações do banco de dados, Transformar palavras inúteis | False | {True|False} |
| MemoryOptimizedElevateToSnapshot | MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT |
Configurações de banco de dados, Operacional, Memória otimizada elevada para instantâneo | False | {True|False} |
| ModelCollation | Configurações do projeto, Colação | 1033,CI | {ID do idioma {integer } {}}, {CI|CS} | |
| NonTransactedFileStreamAccess | NON_TRANSACTED_ACCESS |
Configurações do banco de dados, acesso não transacionado FILESTREAM | OFF | {OFF|READ_ONLY|FULL} |
| NumericRoundAbort | NUMERIC_ROUNDABORT |
Configurações do banco de dados, SET NUMERIC_ROUNDABORT | False | {True|False} |
| OutputPath | Configurações de compilação, caminho de saída |
bin\Debug e bin\Release |
{string} | |
| PageVerify | PAGE_VERIFY |
Configurações do banco de dados, Operacional, Verificação de página | NONE | {NONE|TORN_PAGE_DETECTION|CHECKSUM} |
| Parameterization | PARAMETERIZATION |
Configurações de banco de dados, Parametrização | SIMPLE | {SIMPLE|FORCED} |
| QueryStoreCaptureMode |
QUERY_STORE (QUERY_CAPTURE_MODE) |
Configurações do banco de dados, Operacional, Modo de captura do repositório de consultas | ALL | {OFF|ALL|AUTO} |
| QueryStoreDesiredState |
QUERY_STORE (OPERATION_MODE) |
Configurações do banco de dados, Operacional, Modo de operação do repositório de consultas | OFF | {OFF|READ_WRITE|READ_ONLY} |
| 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 | {integer} |
| QueryStoreIntervalLength |
QUERY_STORE (INTERVAL_LENGTH_MINUTES) |
Configurações do banco de dados, Operacional, Duração do intervalo de armazenamento de consultas (minutos) | 60 | {integer} |
| QueryStoreMaxPlansPerQuery |
QUERY_STORE (MAX_PLANS_PER_QUERY) |
Configurações de banco de dados, Operacional, Armazenamento de consultas Máximo de planos por consulta | 200 | {integer} |
| QueryStoreMaxStorageSize |
QUERY_STORE (MAX_STORAGE_SIZE_MB) |
Configurações do banco de dados, Operacional, Armazenamento de consultas Tamanho máximo de armazenamento (MB) | 100 | {integer} |
| 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 | {integer} |
| QuotedIdentifier | QUOTED_IDENTIFIER |
Configurações do banco de dados, SET QUOTED_IDENTIFIER | True | {True|False} |
| ReadCommittedSnapshot | READ_COMMITTED_SNAPSHOT |
Configurações de banco de dados, Operacional, Leitura de instantâneo confirmado | False | {True|False} |
| Recovery | RECOVERY |
Configurações de banco de dados, Operacional, Recuperação | FULL | {FULL|SIMPLE|BULK_LOGGED} |
| RecursiveTriggersEnabled | RECURSIVE_TRIGGERS |
Configurações do banco de dados, Gatilhos recursivos habilitados | False | {True|False} |
| ServiceBrokerOption | SERVICE_BROKER |
Configurações do banco de dados, opções do Service Broker | DisableBroker | {DisableBroker|EnableBroker|NewBroker|ErrorBrokerConversations} |
| SuppressTSqlWarnings | Configurações de compilação, Suprimir avisos T-SQL (lista separada por vírgulas de códigos de aviso T-SQL) | {string} | ||
| TargetRecoveryTimePeriod | 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 | {integer} |
| TargetRecoveryTimeUnit | Configurações do banco de dados, Operacional, tempo alvo de recuperação | SECONDS | {MINUTES|SECONDS} | |
| TreatTSqlWarningsAsErrors | Configurações de compilação, Tratar avisos T-SQL como erros | False | {True|False} | |
| Trustworthy | TRUSTWORTHY |
Configurações do banco de dados, Confiável | False | {True|False} |
| TwoDigitYearCutoff | TWO_DIGIT_YEAR_CUTOFF |
Definições do banco de dados, limite para ano de dois dígitos | 2049 | {integer} |
| UpdateOptions | db_update_option |
Configurações do banco de dados, Opções de atualização | READ_WRITE | {READ_WRITE|READ_ONLY} |
| ValidateCasingOnIdentifiers | Configuração geral do projeto, validar o invólucro dos identificadores | True | {True|False} |
- 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.