Eigenschappen van SQL-projecten

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric

Naast de inhoud van de afzonderlijke .sql bestanden bevatten SQL-databaseprojecten eigenschappen waarmee het gedrag en de instellingen op databaseniveau van het project worden gedefinieerd. In het .sqlproj bestand worden deze eigenschappen opgeslagen. U kunt deze eigenschappen instellen door het .sqlproj bestand rechtstreeks te bewerken. Sommige hulpprogramma's voor SQL-projecten, zoals Visual Studio en VS Code, bieden toegang tot het bewerken van enkele of veel van de projecteigenschappen in een grafische gebruikersinterface. Dit artikel bevat een overzicht van de eigenschappen die u kunt instellen voor SQL-databaseprojecten.

Veelgebruikte eigenschappen van SQL-projecten zijn onder andere:

Wijzigingen in databaseopties uitschakelen

Tijdens het publiceren van SQL-projecten worden de processcripts gewijzigd in de databaseopties op basis van de waarden die zijn gedefinieerd in de projecteigenschappen en standaardprojectwaarden. Als u wilt voorkomen dat de databaseopties tijdens het publiceren worden gewijzigd, stelt u de ScriptDatabaseOptions publicatie-eigenschap false in op met behulp van een hulpprogramma zoals SqlPackage CLI of Visual Studio. U kunt deze instelling ook opnemen in een publicatieprofiel.

Algemene projecteigenschappen

Met de eigenschap doelplatform geeft u de versie van SQL Server op waarop het project is gericht. Gebruik de DSP eigenschap om het doelplatform voor het SQL-project in te stellen. Zie het artikel over het doelplatform voor meer informatie.

Codeanalyse kan het continue integratie- en implementatieproces aanzienlijk verbeteren door potentiële problemen vroeg in de ontwikkelingslevenscyclus te ondervangen. Zie het artikel over SQL-codeanalyse voor meer informatie over het inschakelen van codeanalyse en het opnemen van aangepaste regels.

Toepassingseigenschappen voor gegevenslagen

Gebruik de volgende eigenschappen om de gegevenslaagtoepassing (DAC) te definiëren die u maakt wanneer u het SQL-project bouwt.

  • DacApplicationName: de naam van de toepassing voor de gegevenslaag .dacpac. De standaardwaarde is de projectnaam.
  • DacDescription: een optionele beschrijving van de toepassing .dacpacvoor de gegevenslaag.
  • DacVersion-: de versie van de gegevenslaagtoepassing .dacpac. De standaardwaarde is 1.0.0.0.

Standaardschema

De eigenschap DefaultSchema stelt het standaardschema voor het SQL-project in. Deze eigenschap is van toepassing op objecten met eendelige namen. De standaardwaarde is dbo.

T-SQL-waarschuwingen

De eigenschappen SuppressTSqlWarnings en TreatTSqlWarningsAsErrors bepalen hoe T-SQL-waarschuwingen worden verwerkt tijdens de projectbuild. De eigenschap SuppressTSqlWarnings onderdrukt T-SQL-waarschuwingen tijdens de projectbuild, die is opgegeven als een door komma's gescheiden lijst met foutnummers.

De eigenschap TreatTSqlWarningsAsErrors behandelt T-SQL-waarschuwingen als fouten, waardoor T-SQL-waarschuwingen mislukken in de build. De standaardwaarde voor TreatTSqlWarningsAsErrors is False.

Sdk-updatewaarschuwingen

De Microsoft. Build.Sql project SDK controleert automatisch op nieuwe versies van de SDK tijdens het bouwen van het project en geeft een waarschuwing weer als er een nieuwere versie beschikbaar is. Het up-to-date houden van projecten met de nieuwste SDK zorgt ervoor dat u toegang hebt tot de nieuwste functies en verbeteringen, waaronder oplossingen voor fouten en toevoegingen van syntaxis. Als u dit gedrag wilt uitschakelen, stelt u de SkipCheckForNewSDKVersion eigenschap in op true.

Voorbeeld van het gebruik van projecteigenschappen

In het volgende voorbeeld ziet u hoe u de eigenschappen CompatibilityMode, IsChangeTrackingOnen TreatTSqlWarningsAsErrors instelt in een SQL-projectbestand. De eigenschap CompatibilityMode is ingesteld op 130, de eigenschap IsChangeTrackingOn is ingesteld op Trueen de eigenschap TreatTSqlWarningsAsErrors is ingesteld op True. De eigenschap TreatSqlWarningsAsErrors is alleen ingesteld op True in de Release-buildconfiguratie.

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build">
  <Sdk Name="Microsoft.Build.Sql" Version="2.2.0" />
  <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>

Alle projecteigenschappen

Sommige projecteigenschappen zijn gekoppeld aan databaseopties die alleen van toepassing zijn op SQL Server-databases of specifieke versies van SQL Server. Voordat u een projecteigenschap in uw project op neemt, raadpleegt u de bijbehorende documentatie voor de databaseoptie om inzicht te hebben in het gedrag van de eigenschappen- en databasevereisten.

Property DATABASE SET optie Gebruikersinterface-label Standaardwaarde van SQL-project Toegestane waarden
AcceleratedDatabaseRecovery ACCELERATED_DATABASE_RECOVERY Database-instellingen, operationeel, versneld databaseherstel False {Waar|Onwaar}5
AllowSnapshotIsolation ALLOW_SNAPSHOT_ISOLATION Database-instellingen, Operationeel, Isolatie van momentopnamen toestaan False {True|False}
AnsiNulls ANSI_NULLS Database-instellingen, SET ANSI_NULLS True {True|False}
AnsiPadding ANSI_PADDING Database-instellingen, SET ANSI_PADDING True {True|False}
AnsiWarnings ANSI_WARNINGS Database-instellingen, SET ANSI_WARNINGS True {True|False}
ArithAbort ARITHABORT Database-instellingen, SETSET ARITHABORT True {True|False}
AutoClose AUTO_CLOSE Database-instellingen, Operationeel, Automatisch sluiten False {True|False}
AutoCreateStatistics AUTO_CREATE_STATISTICS Database-instellingen, Operationeel, Statistieken automatisch maken True {True|False}
AutoCreateStatisticsIncremental AUTO_CREATE_STATISTICS (INCREMENTAL) Database-instellingen, Operationeel, Automatisch incrementeel maken False {True|False}
AutomaticIndexCompaction AUTOMATIC_INDEX_COMPACTION Database-instellingen, Operationeel, Automatische indexcompressie False {True|False}
AutoShrink AUTO_SHRINK Database-instellingen, Operationeel, Automatisch verkleinen False {True|False}
AutoUpdateStatistics AUTO_UPDATE_STATISTICS Database-instellingen, Operationeel, Statistieken automatisch bijwerken True {True|False}
AutoUpdateStatisticsAsynchronously AUTO_UPDATE_STATISTICS_ASYNC Database-instellingen, Operationeel, Statistieken automatisch asynchroon bijwerken False {True|False}
ChangeTrackingRetentionPeriod CHANGE_RETENTION Database-instellingen, Operationele instellingen, Bewaarperiode voor wijzigingstracering 2 {integer}
ChangeTrackingRetentionUnit CHANGE_RETENTION Database-instellingen, Operationele instellingen, Bewaarperiode voor wijzigingstracering MINUTES {DAYS|HOURS|MINUTES}
CloseCursorOnCommitEnabled CURSOR_CLOSE_ON_COMMIT Database-instellingen, Operationeel, Cursor sluiten bij doorvoer ingeschakeld False {True|False}
CompatibilityMode COMPATIBILITY_LEVEL Database-instellingen, compatibiliteitsniveau {100|110|120|130|140|150|160|170}1
ConcatNullYieldsNull CONCAT_NULL_YIELDS_NULL Database-instellingen, SET CONCAT_NULL_YIELDS_NULL True {True|False}
Containment CONTAINMENT Database-instellingen, insluiting NONE {NONE|PARTIAL}
DacApplicationName Eigenschappen, naam van gegevenslaagtoepassing (.dacpac) De projectnaam {string}
DacDescription Eigenschappen, beschrijving van gegevenslaagtoepassing (.dacpac) {string}
DacVersion Eigenschappen van gegevenslaagtoepassing (.dacpac), versie 1.0.0.0 {semantische versie nummer}
DatabaseAccess db_user_access_option Database-instellingen, Databasetoegang MULTI_USER {MULTI_USER|SINGLE_USER|RESTRICTED_USER}
DatabaseChaining DB_CHAINING Database-instellingen, database doorverbinden False {True|False}
DatabaseDefaultFulltextLanguage DEFAULT_FULLTEXT_LANGUAGE Database-instellingen, standaardtaal voor volledige tekst 1033 {geheel getal taal-id}
DatabaseDefaultLanguage DEFAULT_LANGUAGE Database-instellingen, standaardtaal 1033 {geheel getal taal-id}
DatabaseState db_state_option Database-instellingen, databasestatus ONLINE {ONLINE|OFFLINE}
DbScopedConfigLegacyCardinalityEstimation LEGACY_CARDINALITY_ESTIMATION 2 Configuratie met database-scope, legacy-kardinaliteitsschatting Off {Off|On}
DbScopedConfigLegacyCardinalitySecondaryEstimation LEGACY_CARDINALITY_SECONDARY_ESTIMATION 2 Configuratie van databasescope, legacy-kardinaliteitsschatting voor secundair Primary {Primary|Off|On}
DbScopedConfigParameterSniffing PARAMETER_SNIFFING 2 Configuratie voor databasebereik, parametersniffing On {On|Off}
DbScopedConfigParameterSniffingSecondary PARAMETER_SNIFFING_SECONDARY 2 Configuratie van databasescope, parameter-sniffing voor secundaire componenten Primary {Primary|Off|On}
DbScopedConfigOptimizerHotfixes OPTIMIZER_HOTFIXES 2 Configuratie van databasebereik, hotfixes voor queryoptimalisatie Off {Off|On}
DbScopedConfigOptimizerHotfixesSecondary OPTIMIZER_HOTFIXES_SECONDARY 2 Databasegerichte configuratie, hotfixes voor de queryoptimizer voor secundaire servers. Primary {Primary|Off|On}
DbScopedConfigMaxDOP MAXDOP 2 Configuratie van databasebereik, maximale mate van parallelle uitvoering 0 {integer}
DbScopedConfigMaxDOPSecondary MAXDOP_SECONDARY 2 Configuratie van databasebereik, maximale mate van parallelle verwerking voor secundaire databases {integer}
DbScopedConfigDWCompatibilityLevel DW_COMPATIBILITY_LEVEL 2 Configuratie van databasebereik, DW-compatibiliteitsniveau 0 {0|10|20|30|40|50|9000}3
DefaultCollation COLLATE 4 Database-instellingen, databasecollatie SQL_Latin1_General_CP1_CI_AS Zie SQL Server-sorteringsnaam voor geldige waarden.
DefaultCursor CURSOR_DEFAULT Database-instellingen, operationeel, standaardcursor Local {Global|Local}
DefaultFilegroup Database-instellingen, operationele, standaardbestandsgroep PRIMARY {string}
DefaultFileStreamFilegroup Database-instellingen, Operationeel, Standaard filestream bestandsgroep {string}
DefaultSchema Algemene projectinstelling, standaardschema dbo {string}
DelayedDurability DELAYED_DURABILITY Database-instellingen, Operationeel, Vertraagde duurzaamheid van transacties DISABLED {DISABLED|ALLOWED|FORCED}
DSP Het doelplatform voor het SQL-project Zie doelplatform voor geldige waarden.
EnableFullTextSearch Database-instellingen, Zoeken in volledige tekst inschakelen True {True|False}
FileStreamDirectoryName FILESTREAM (DIRECTORY_NAME) Database-instellingen, FILESTREAM-mapnaam {string}
IsBrokerPriorityHonored HONOR_BROKER_PRIORITY Database-instellingen, Brokerprioriteit gehonoreerd False {True|False}
IsChangeTrackingAutoCleanupOn CHANGE_TRACKING Database-instellingen, Operationele instellingen, Automatisch opschonen van wijzigingstracering True {True|False}
IsChangeTrackingOn CHANGE_TRACKING Database-instellingen, Operationeel, Wijzigingen bijhouden False {True|False}
IsEncryptionOn ENCRYPTION Database-instellingen, versleuteling ingeschakeld False {True|False}
IsLedgerOn LEDGER 4 Database-instellingen, Grootboek inschakelen False {True|False}
IsNestedTriggersOn NESTED_TRIGGERS Database instellingen, geneste triggers ingeschakeld True {True|False}
IsTransformNoiseWordsOn TRANSFORM_NOISE_WORDS Database-instellingen, ruiswoorden omzetten False {True|False}
MemoryOptimizedElevateToSnapshot MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT Database-instellingen, operationeel, geoptimaliseerd voor geheugen, overzetten naar momentopname False {True|False}
ModelCollation Projectinstellingen, Sorteervolgorde 1033,CI {integer taal-id}, {CI|CS}
NonTransactedFileStreamAccess NON_TRANSACTED_ACCESS Database-instellingen, niet-getransacteerde toegang FILESTREAM OFF {OFF|READ_ONLY|FULL}
NumericRoundAbort NUMERIC_ROUNDABORT Database-instellingen, SET NUMERIC_ROUNDABORT False {True|False}
OptimizedLocking OPTIMIZED_LOCKING Database-instellingen, Operationeel, Geoptimaliseerde vergrendeling False {Waar|Onwaar}5
OutputPath Bouwinstellingen, uitvoerpad bin\Debug en bin\Release {string}
PageVerify PAGE_VERIFY Database-instellingen, Operationeel, Paginaverificatie NONE {NONE|TORN_PAGE_DETECTION|CHECKSUM}
Parameterization PARAMETERIZATION Database-instellingen, parameterisatie SIMPLE {SIMPLE|FORCED}
QueryStoreCaptureMode QUERY_STORE (QUERY_CAPTURE_MODE) Database-instellingen, Operationeel, Opnamemethode van query-opslag ALL {OFF|ALL|AUTO}
QueryStoreDesiredState QUERY_STORE (OPERATION_MODE) Database-instellingen, Operationeel, Query Store-bewerkingsmodus OFF {OFF|READ_WRITE|READ_ONLY}
QueryStoreFlushInterval QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS) Database-instellingen, Operationeel, Interval voor het legen van gegevens van query-opslag (seconden) 900 {integer}
QueryStoreIntervalLength QUERY_STORE (INTERVAL_LENGTH_MINUTES) Database-instellingen, Bedrijfsvoering, Intervallengte queryopslag (minuten) 60 {integer}
QueryStoreMaxPlansPerQuery QUERY_STORE (MAX_PLANS_PER_QUERY) Database-instellingen, Operationeel, Query-opslag maximale plannen per query 200 {integer}
QueryStoreMaxStorageSize QUERY_STORE (MAX_STORAGE_SIZE_MB) Database-instellingen, Operationeel, Query store maximale opslaggrootte (MB) 100 {integer}
QueryStoreStaleQueryThreshold QUERY_STORE (STALE_QUERY_THRESHOLD_DAYS) Database-instellingen, Operationeel, Queryopslag verouderde querydrempel (dagen) 367 {integer}
QuotedIdentifier QUOTED_IDENTIFIER Database-instellingen, SET QUOTED_IDENTIFIER True {True|False}
ReadCommittedSnapshot READ_COMMITTED_SNAPSHOT Database-instellingen, operationele, vastgelegde momentopname lezen False {True|False}
Recovery RECOVERY Database-instellingen, Operationeel, Herstel FULL {FULL|SIMPLE|BULK_LOGGED}
RecursiveTriggersEnabled RECURSIVE_TRIGGERS Database-instellingen, recursieve triggers ingeschakeld False {True|False}
ServiceBrokerOption SERVICE_BROKER Database-instellingen, Service Broker-opties DisableBroker {DisableBroker|EnableBroker|NewBroker|ErrorBrokerConversations}
SkipCheckForNewSDKVersion Build-instellingen, controle op de nieuwe SDK-versie overslaan False {True|False}
SuppressTSqlWarnings Build-instellingen, T-SQL-waarschuwingen onderdrukken (door komma's gescheiden lijst met T-SQL-waarschuwingscodes) {string}
TargetRecoveryTimePeriod Database-instellingen, Operationele, beoogde hersteltijd (seconden) Hiermee geeft u de frequentie van indirecte controlepunten per database. 60 {integer}
TargetRecoveryTimeUnit Database-instellingen, operationele hersteltijd, doelhersteltijd SECONDS {MINUTES|SECONDS}
TreatTSqlWarningsAsErrors Build-instellingen, T-SQL-waarschuwingen als fouten behandelen False {True|False}
Trustworthy TRUSTWORTHY Database-instellingen, betrouwbaar False {True|False}
TwoDigitYearCutoff TWO_DIGIT_YEAR_CUTOFF Database-instellingen, afkapgrens voor tweecijferige jaren 2049 {integer}
UpdateOptions db_update_option Database-instellingen, Bijwerkopties READ_WRITE {READ_WRITE|READ_ONLY}
ValidateCasingOnIdentifiers Algemene projectinstelling, valideer de behuizing van id's True {True|False}
  1. De standaardwaarde verschilt op basis van engine-editie- en serverinstellingen.
  2. configuratie van databasebereik opties.
  3. AUTO wordt ingesteld met de 0-waarde.
  4. Is alleen van toepassing als CREATE DATABASEoptie.
  5. Niet van toepassing op Azure SQL Database, waarbij de optie altijd is ingeschakeld.