Partager via


Propriétés des projets SQL

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de données SQL dans Microsoft Fabric

Outre le contenu des fichiers .sql individuels, les projets de base de données SQL contiennent des propriétés qui définissent le comportement du projet et les paramètres au niveau de la base de données. Ces propriétés sont stockées dans le fichier .sqlproj et peuvent être définies en modifiant directement le fichier .sqlproj. Certains outils de projets SQL, tels que Visual Studio et VS Code, permettent de modifier quelques-unes ou plusieurs des propriétés du projet dans une interface utilisateur graphique. Cet article fournit une vue d’ensemble des propriétés que vous pouvez définir pour les projets de base de données SQL.

Les propriétés de projets SQL couramment utilisées sont les suivantes :

Désactiver les modifications des options de base de données

Pendant la publication du projet SQL, les modifications apportées aux options de base de données sont scriptées en fonction des valeurs définies dans les propriétés du projet et des valeurs de projet par défaut. Pour empêcher la modification des options de base de données lors de la publication, à l’aide d’un outil tel que CLI SqlPackage ou Visual Studio, définissez la propriété de publication sur ScriptDatabaseOptions sur false. Ce paramètre peut également être incorporé dans un profil de publication.

Propriétés courantes du projet

La propriété plateforme cible spécifie la version de SQL Server ciblée par le projet. La propriété DSP est utilisée pour définir la plateforme cible pour le projet SQL. Vous trouverez plus d’informations sur la plateforme cible dans l’article plateforme cible.

L’analyse du code peut considérablement améliorer le processus d’intégration et de déploiement continu en interceptant les problèmes potentiels au début du cycle de vie du développement. En savoir plus sur l’activation de l’analyse du code et l’inclusion de règles personnalisées dans l’article analyse du code SQL.

Propriétés de l’application de la couche de données

Les propriétés suivantes sont utilisées pour définir l’application de la couche Données (DAC) créée lors de la génération du projet SQL.

  • DacApplicationName: nom de l’application de la couche données .dacpac. La valeur par défaut est le nom du projet.
  • DacDescription: description facultative de l’application de la couche de données .dacpac.
  • DacVersion : version de l’application de la couche Données .dacpac. La valeur par défaut est 1.0.0.0.

Schéma par défaut

La propriété DefaultSchema définit le schéma par défaut du projet SQL. Cette propriété s’applique aux objets nommés en 1 partie. La valeur par défaut est dbo.

Avertissements T-SQL

Les propriétés SuppressTSqlWarnings et TreatTSqlWarningsAsErrors contrôlent la façon dont les avertissements T-SQL sont gérés pendant la génération du projet. La propriété SuppressTSqlWarnings supprime les avertissements T-SQL pendant la génération du projet, spécifiée sous la forme d’une liste séparée par des virgules de numéros d’erreur.

La propriété TreatTSqlWarningsAsErrors traite les avertissements T-SQL comme des erreurs, ce qui entraîne l'échec de la construction en cas d'avertissements T-SQL. La valeur par défaut pour TreatTSqlWarningsAsErrors est False.

Exemple d’utilisation des propriétés du projet

L’exemple suivant montre comment définir les propriétés CompatibilityMode, IsChangeTrackingOnet TreatTSqlWarningsAsErrors dans un fichier projet SQL. La propriété CompatibilityMode est définie sur 130, la propriété IsChangeTrackingOn est définie sur Trueet la propriété TreatTSqlWarningsAsErrors est définie sur True. La propriété TreatSqlWarningsAsErrors est définie uniquement sur True sur la configuration de build 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>

Toutes les propriétés du projet

Certaines propriétés de projet sont associées aux options de base de données qui s’appliquent uniquement aux bases de données SQL Server ou aux versions spécifiques de SQL Server. Avant d’inclure une propriété de projet dans votre projet, passez en revue la documentation associée pour connaître le comportement de la propriété et des exigences de base de données.

Property DATABASE SET option Étiquette de l’interface utilisateur Valeur par défaut du projet SQL Valeurs autorisées
AllowSnapshotIsolation ALLOW_SNAPSHOT_ISOLATION Paramètres de base de données, Opérationnel, Autoriser l’isolation des instantanés False {True|False}
AnsiNulls ANSI_NULLS Paramètres de base de données, SET ANSI_NULLS True {True|False}
AnsiPadding ANSI_PADDING Paramètres de base de données, SET ANSI_PADDING True {True|False}
AnsiWarnings ANSI_WARNINGS Paramètres de base de données, SET ANSI_WARNINGS True {True|False}
ArithAbort ARITHABORT Paramètres de base de données, SET ARITHABORT True {True|False}
AutoClose AUTO_CLOSE Paramètres de base de données, Opérationnel, Fermeture automatique False {True|False}
AutoCreateStatistics AUTO_CREATE_STATISTICS Paramètres de base de données, Opérationnel, Création automatique de statistiques True {True|False}
AutoCreateStatisticsIncremental AUTO_CREATE_STATISTICS (INCREMENTAL) Paramètres de base de données, Opérationnel, Création automatique incrémentielle False {True|False}
AutoShrink AUTO_SHRINK Paramètres de base de données, Opérationnel, Réduction automatique False {True|False}
AutoUpdateStatistics AUTO_UPDATE_STATISTICS Paramètres de base de données, Opérationnel, Statistiques de mise à jour automatique True {True|False}
AutoUpdateStatisticsAsynchronously AUTO_UPDATE_STATISTICS_ASYNC Paramètres de base de données, Opérationnel, Mise à jour automatique des statistiques de manière asynchrone False {True|False}
ChangeTrackingRetentionPeriod CHANGE_RETENTION Paramètres de base de données, Opérationnel, Période de rétention du suivi des modifications 2 {integer}
ChangeTrackingRetentionUnit CHANGE_RETENTION Paramètres de base de données, Opérationnel, Période de rétention du suivi des modifications MINUTES {DAYS|HOURS|MINUTES}
CloseCursorOnCommitEnabled CURSOR_CLOSE_ON_COMMIT Paramètres de base de données, Opérationnel, Fermer le curseur à la validation activé False {True|False}
CompatibilityMode COMPATIBILITY_LEVEL Paramètres de base de données, niveau de compatibilité {100|110|120|130|140|150|160|170}1
ConcatNullYieldsNull CONCAT_NULL_YIELDS_NULL Paramètres de la base de données, SET CONCAT_NULL_YIELDS_NULL True {True|False}
Containment CONTAINMENT Paramètres de base de données, Confinement NONE {NONE|PARTIAL}
DacApplicationName Propriétés de l’application de la couche données (.dacpac), nom Nom du projet {string}
DacDescription Propriétés de l’application de la couche de données (.dacpac), description {string}
DacVersion Propriétés de l’application de niveau de données (.dacpac), Version 1.0.0.0 {numéro de version sémantique}
DatabaseAccess db_user_access_option Paramètres de base de données, accès à la base de données MULTI_USER {MULTI_USER|SINGLE_USER|RESTRICTED_USER}
DatabaseChaining DB_CHAINING Paramètres de base de données, chaînage de bases de données False {True|False}
DatabaseDefaultFulltextLanguage DEFAULT_FULLTEXT_LANGUAGE Paramètres de base de données, langue de texte intégral par défaut 1033 {integer language id}
DatabaseDefaultLanguage DEFAULT_LANGUAGE Paramètres de base de données, langue par défaut 1033 {integer language id}
DatabaseState db_state_option Paramètres de base de données, état de la base de données ONLINE {ONLINE|OFFLINE}
DbScopedConfigLegacyCardinalityEstimation LEGACY_CARDINALITY_ESTIMATION 2 Configuration de la portée de la base de données, estimation de la cardinalité héritée Off {Off|On}
DbScopedConfigLegacyCardinalitySecondaryEstimation LEGACY_CARDINALITY_SECONDARY_ESTIMATION 2 Configuration à l'échelle de la base de données, estimation de cardinalité héritée pour le secondaire Primary {Primary|Off|On}
DbScopedConfigParameterSniffing PARAMETER_SNIFFING 2 Configuration de la base de données, détection des paramètres On {On|Off}
DbScopedConfigParameterSniffingSecondary PARAMETER_SNIFFING_SECONDARY 2 Configuration de la base de données, détection de paramètres pour la base de données secondaire Primary {Primary|Off|On}
DbScopedConfigOptimizerHotfixes OPTIMIZER_HOTFIXES 2 Configuration limitée à la base de données, correctifs de l’optimiseur de requête Off {Off|On}
DbScopedConfigOptimizerHotfixesSecondary OPTIMIZER_HOTFIXES_SECONDARY 2 Configuration de la portée de la base de données, correctifs de l'optimiseur de requêtes pour la base de données secondaire Primary {Primary|Off|On}
DbScopedConfigMaxDOP MAXDOP 2 Configuration de la portée de la base de données, degrés de parallélisme maximum 0 {integer}
DbScopedConfigMaxDOPSecondary MAXDOP_SECONDARY 2 Configuration de la portée de la base de données, degrés de parallélisme maximum pour le secondaire {integer}
DbScopedConfigDWCompatibilityLevel DW_COMPATIBILITY_LEVEL 2 Configuration de la portée de la base de données, niveau de compatibilité DW 0 {0|10|20|30|40|50|9000}3
DefaultCollation COLLATE 4 Paramètres de base de données, classement de base de données SQL_Latin1_General_CP1_CI_AS Consultez le nom de classement SQL Server pour connaître les valeurs valides.
DefaultCursor CURSOR_DEFAULT Paramètres de base de données, Opérationnel, Curseur par défaut Local {Global|Local}
DefaultFilegroup Paramètres de base de données, Opérationnel, Groupe de fichiers par défaut PRIMARY {string}
DefaultFileStreamFilegroup Paramètres de base de données, Opérationnel, Groupe de fichiers de flux de fichiers par défaut {string}
DefaultSchema Paramètre de projet général, schéma par défaut dbo {string}
DelayedDurability DELAYED_DURABILITY Paramètres de configuration de la base de données, Opérationnelles, Durabilité différée des transactions DISABLED {DISABLED|ALLOWED|FORCED}
DSP La plateforme cible pour le projet SQL Consultez plateforme cible pour connaître les valeurs valides.
EnableFullTextSearch Paramètres de base de données, Activer la recherche en texte intégral True {True|False}
FileStreamDirectoryName FILESTREAM (DIRECTORY_NAME) Paramètres de base de données, nom du répertoire FILESTREAM {string}
IsBrokerPriorityHonored HONOR_BROKER_PRIORITY Paramètres de la base de données, priorité du courtier respectée False {True|False}
IsChangeTrackingAutoCleanupOn CHANGE_TRACKING Paramètres de la base de données, Opérationnel, Nettoyage automatique Change tracking True {True|False}
IsChangeTrackingOn CHANGE_TRACKING Paramètres de base de données, Opérationnel, Suivi des modifications False {True|False}
IsEncryptionOn ENCRYPTION Paramètres de base de données, Chiffrement activé False {True|False}
IsLedgerOn LEDGER 4 Paramètres de base de données, Activer le registre False {True|False}
IsNestedTriggersOn NESTED_TRIGGERS Paramètres de base de données, déclencheurs imbriqués activés True {True|False}
IsTransformNoiseWordsOn TRANSFORM_NOISE_WORDS Paramètres de la base de données, Transformer les mots parasites False {True|False}
MemoryOptimizedElevateToSnapshot MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT Paramètres de la base de données, opérationnel, mémoire optimisée, élévation vers l'instantané False {True|False}
ModelCollation Paramètres du projet, Collationnement 1033,CI {intégration de l’identificateur de langue}, {CI|CS}
NonTransactedFileStreamAccess NON_TRANSACTED_ACCESS Paramètres de base de données, accès non transactionné FILESTREAM OFF {OFF|READ_ONLY|FULL}
NumericRoundAbort NUMERIC_ROUNDABORT Paramètres de la base de données, SET NUMERIC_ROUNDABORT False {True|False}
OutputPath Paramètres de génération, chemin de sortie bin\Debug et bin\Release {string}
PageVerify PAGE_VERIFY Paramètres de base de données, Opérationnel, Vérification de page NONE {NONE|TORN_PAGE_DETECTION|CHECKSUM}
Parameterization PARAMETERIZATION Paramètres de base de données, Paramétrage SIMPLE {SIMPLE|FORCED}
QueryStoreCaptureMode QUERY_STORE (QUERY_CAPTURE_MODE) Paramètres de la base de données, Opérationnel, Mode de capture du magasin de requêtes ALL {OFF|ALL|AUTO}
QueryStoreDesiredState QUERY_STORE (OPERATION_MODE) Paramètres de base de données, Opérationnel, Mode d’opération du magasin de requêtes OFF {OFF|READ_WRITE|READ_ONLY}
QueryStoreFlushInterval QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS) Paramètres de base de données, Opérationnel, Intervalle de vidage des données du magasin de requêtes (secondes) 900 {integer}
QueryStoreIntervalLength QUERY_STORE (INTERVAL_LENGTH_MINUTES) Paramètres de base de données, Opérationnel, Durée d’intervalle du store de requêtes (minutes) 60 {integer}
QueryStoreMaxPlansPerQuery QUERY_STORE (MAX_PLANS_PER_QUERY) Paramètres de la base de données, opérationnels, plans max. du magasin de requêtes par requête 200 {integer}
QueryStoreMaxStorageSize QUERY_STORE (MAX_STORAGE_SIZE_MB) Paramètres de base de données, Opérationnel, Taille de stockage maximale du magasin de requêtes (Mo) 100 {integer}
QueryStoreStaleQueryThreshold QUERY_STORE (STALE_QUERY_THRESHOLD_DAYS) Paramètres de la base de données, Opérationnel, Seuil de requête obsolète du magasin de requêtes (jours) 367 {integer}
QuotedIdentifier QUOTED_IDENTIFIER Paramètres de la base de données, SET QUOTED_IDENTIFIER True {True|False}
ReadCommittedSnapshot READ_COMMITTED_SNAPSHOT Paramètres de la base de données, opérationnel, instantané validé en lecture False {True|False}
Recovery RECOVERY Paramètres de base de données, Opérationnel, Récupération FULL {FULL|SIMPLE|BULK_LOGGED}
RecursiveTriggersEnabled RECURSIVE_TRIGGERS Paramètres de base de données, déclencheurs récursifs activés False {True|False}
ServiceBrokerOption SERVICE_BROKER Paramètres de base de données, options Service Broker DisableBroker {DisableBroker|EnableBroker|NewBroker|ErrorBrokerConversations}
SuppressTSqlWarnings Paramètres de génération, Supprimer les avertissements T-SQL (liste séparée par des virgules des codes d’avertissement T-SQL) {string}
TargetRecoveryTimePeriod Paramètres de base de données, opérationnel, temps de récupération cible (secondes) Spécifie la fréquence des points de contrôle indirects en fonction de chaque base de données. 60 {integer}
TargetRecoveryTimeUnit Paramètres de base de données, Opérationnel, Temps de récupération cible SECONDS {MINUTES|SECONDS}
TreatTSqlWarningsAsErrors Paramètres de génération, Traiter les avertissements T-SQL comme des erreurs False {True|False}
Trustworthy TRUSTWORTHY Paramètres de base de données, Digne de confiance False {True|False}
TwoDigitYearCutoff TWO_DIGIT_YEAR_CUTOFF Paramètres de la base de données, coupure de deux chiffres d’année 2049 {integer}
UpdateOptions db_update_option Paramètres de base de données, Options de mise à jour READ_WRITE {READ_WRITE|READ_ONLY}
ValidateCasingOnIdentifiers Paramétrage général du projet, valider la casse des identifiants True {True|False}
  1. La valeur par défaut diffère en fonction de l’édition du moteur et des paramètres du serveur.
  2. Options de Configuration de la portée de la base de données.
  3. AUTO est défini avec la valeur 0.
  4. S’applique uniquement en tant qu’option CREATE DATABASE.