Freigeben über


EIGENSCHAFTEN von SQL-Projekten

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceSQL-Datenbank in Microsoft Fabric

Neben dem Inhalt der einzelnen .sql Dateien enthalten SQL-Datenbankprojekte Eigenschaften, die das Verhalten und die Einstellungen auf Datenbankebene des Projekts definieren. Diese Eigenschaften werden in der .sqlproj Datei gespeichert und können durch direktes Bearbeiten der .sqlproj Datei festgelegt werden. Einige SQL-Projekttools, z. B. Visual Studio und VS Code, bieten Zugriff auf einige oder viele der Projekteigenschaften in einer grafischen Benutzeroberfläche. Dieser Artikel enthält eine Übersicht über die Eigenschaften, die Sie für SQL-Datenbankprojekte festlegen können.

Häufig verwendete SQL-Projekteigenschaften umfassen:

Datenbankoptionenänderungen deaktivieren

Während der Veröffentlichung eines SQL-Projekts werden Änderungen an den Datenbankoptionen basierend auf den in den Projekteigenschaften definierten Werten und den Standardprojektwerten geskriptet. Um zu verhindern, dass die Datenbankoptionen während der Veröffentlichung geändert werden, legen Sie mithilfe eines Tools wie SqlPackage CLI oder Visual Studio die Veröffentlichungseigenschaft auf ScriptDatabaseOptions "false" fest. Diese Einstellung kann auch in ein Veröffentlichungsprofil integriert werden.

Allgemeine Projekteigenschaften

Die Zielplattformeigenschaft gibt die Version von SQL Server an, auf die das Projekt ausgerichtet ist. Die DSP Eigenschaft wird verwendet, um die Zielplattform für das SQL-Projekt festzulegen. Weitere Informationen zur Zielplattform finden Sie im Zielplattformartikel .

Die Codeanalyse kann den kontinuierlichen Integrations- und Bereitstellungsprozess erheblich verbessern, indem potenzielle Probleme frühzeitig im Entwicklungslebenszyklus erfasst werden. Erfahren Sie mehr über das Aktivieren der Codeanalyse und das Einschließen von benutzerdefinierten Regeln im SQL-Codeanalyseartikel .

Eigenschaften der Datenebenenanwendung

Die folgenden Eigenschaften werden verwendet, um die Datenebenenanwendung (Data Tier Application, DAC) zu definieren, die beim Erstellen des SQL-Projekts erstellt wird.

  • DacApplicationName: Der Name der Datenebenenanwendung .dacpac. Der Standardwert ist der Projektname.
  • DacDescription: Eine optionale Beschreibung der Datenebenenanwendung .dacpac.
  • DacVersion: Die Version der Datenebenenanwendung .dacpac. Der Standardwert ist 1.0.0.0.

Standardschema

Die DefaultSchema Eigenschaft legt das Standardschema für das SQL-Projekt fest. Diese Eigenschaft gilt für einteilige benannte Objekte. Der Standardwert ist dbo.

T-SQL-Warnungen

Die SuppressTSqlWarnings- und TreatTSqlWarningsAsErrors-Eigenschaften steuern, wie T-SQL-Warnungen während des Projektbuilds behandelt werden. Die SuppressTSqlWarnings Eigenschaft unterdrückt T-SQL-Warnungen während des Projektbuilds, die als durch Trennzeichen getrennte Liste von Fehlernummern angegeben werden.

Die TreatTSqlWarningsAsErrors Eigenschaft behandelt T-SQL-Warnungen als Fehler, wodurch jegliche T-SQL-Warnungen den Build-Prozess fehlschlagen lassen. Der Standardwert für TreatTSqlWarningsAsErrors ist False.

Beispiel für die Verwendung von Projekteigenschaften

Das folgende Beispiel zeigt, wie die Eigenschaften CompatibilityMode, IsChangeTrackingOn und TreatTSqlWarningsAsErrors in einer SQL-Projektdatei festgelegt werden. Die CompatibilityMode Eigenschaft ist auf 130festgelegt, die IsChangeTrackingOn Eigenschaft auf True, und die TreatTSqlWarningsAsErrors Eigenschaft wird auf Truefestgelegt. Die Eigenschaft TreatSqlWarningsAsErrors wird nur für die Release-Buildkonfiguration auf True festgelegt.

<?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>

Alle Projekteigenschaften

Einige Projekteigenschaften sind Datenbankoptionen zugeordnet, die nur für SQL Server-Datenbanken oder bestimmte Versionen von SQL Server gelten. Bevor Sie eine Projekteigenschaft in Ihr Projekt einschließen, lesen Sie die zugehörige Dokumentation für die Datenbankoption, um das Verhalten der Eigenschaften- und Datenbankanforderungen zu verstehen.

Eigentum Option DATABASE SET Benutzeroberflächenbezeichnung SQL-Projektstandardwert Zulässige Werte
AllowSnapshotIsolation ALLOW_SNAPSHOT_ISOLATION Datenbankeinstellungen, Betriebsbereit, Momentaufnahmeisolation zulassen Falsch {Wahr|Falsch}
AnsiNulls ANSI_NULLS Datenbankeinstellungen, SET-ANSI_NULLS Richtig {Wahr|Falsch}
AnsiPadding ANSI_PADDING Datenbankeinstellungen, SET ANSI_PADDING Richtig {Wahr|Falsch}
AnsiWarnings ANSI_WARNINGS Datenbankeinstellungen, SET ANSI_WARNINGS Richtig {Wahr|Falsch}
ArithAbort ARITHABORT Datenbankeinstellungen, SET ARITHABORT Richtig {Wahr|Falsch}
AutoClose AUTO_CLOSE Datenbankeinstellungen, Betriebsbereit, automatisches Schließen Falsch {Wahr|Falsch}
Automatische Statistikerstellung AUTO_CREATE_STATISTICS Datenbankeinstellungen, betriebsbereit, Statistiken automatisch erstellen Richtig {Wahr|Falsch}
AutoCreateStatisticsIncremental AUTO_CREATE_STATISTICS (INCREMENTAL) Datenbankeinstellungen, Betriebsbereit, Inkrementell automatisch generieren Falsch {Wahr|Falsch}
AutoShrink AUTO_SHRINK Datenbankeinstellungen, Betriebsbereit, automatisch verkleinern Falsch {True|False}
AutoUpdateStatistics AUTO_UPDATE_STATISTICS Datenbankeinstellungen, Betriebs-, Automatische Aktualisierungsstatistik Richtig {True|False}
AutoUpdateStatisticsAsynchronously AUTO_UPDATE_STATISTICS_ASYNC Datenbankeinstellungen, betriebsbereit, Statistiken automatisch asynchron aktualisieren Falsch {Wahr|Falsch}
ChangeTrackingRetentionPeriod CHANGE_RETENTION Datenbankeinstellungen, Betrieb, Aufbewahrungszeitraum für Änderungsverfolgung 2 {integer}
ChangeTrackingRetentionUnit CHANGE_RETENTION Datenbankeinstellungen, Betriebsbereit, Änderungsnachverfolgung des Aufbewahrungszeitraums MINUTES {TAGE|STUNDEN|MINUTEN}
CloseCursorOnCommitEnabled CURSOR_CLOSE_ON_COMMIT Datenbankeinstellungen, betriebsbereit, Schließen des Cursors nach dem Commit aktiviert Falsch {True|False}
Kompatibilitätsmodus COMPATIBILITY_LEVEL Datenbankeinstellungen, Kompatibilitätsstufe {100|110|120|130|140|150|160|170}1
ConcatNullYieldsNull CONCAT_NULL_YIELDS_NULL Datenbankeinstellungen, SET CONCAT_NULL_YIELDS_NULL Richtig {True|False}
Containment CONTAINMENT Datenbankeinstellungen, Eindämmung NICHTS {NONE|PARTIAL}
DacApplicationName Eigenschaften der Datenebenenanwendung (.dacpac), Name Der Projektname {string}
DacDescription Eigenschaften der Anwendung auf Datenebene (.dacpac), Beschreibung {string}
DacVersion Datenebenenanwendung (.dacpac) Eigenschaften, Version 1.0.0.0 {semantische Versionsnummer}
DatabaseAccess db_user_access_option Datenbankeinstellungen, Datenbankzugriff MULTI_USER {MULTI_USER|SINGLE_USER|RESTRICTED_USER}
DatabaseChaining DB_CHAINING Datenbankeinstellungen, Datenbankverkettung Falsch {Wahr|Falsch}
DatabaseDefaultFulltextLanguage DEFAULT_FULLTEXT_LANGUAGE Datenbankeinstellungen, Standard-Volltextsprache 1033 {integer language id}
DatenbankStandardsprache DEFAULT_LANGUAGE Datenbankeinstellungen, Standardsprache 1033 {integer language id}
DatabaseState db_state_option Datenbankeinstellungen, Datenbankstatus ONLINE {ONLINE|OFFLINE}
DbScopedConfigLegacyCardinalityEstimation LEGACY_CARDINALITY_ESTIMATION2 Datenbankweit gültige Konfiguration, Legacy-Kardinalitätsschätzung Off {Off|On}
DbScopedConfigLegacyCardinalitySecondaryEstimation LEGACY_CARDINALITY_SECONDARY_ESTIMATION2 Datenbankweit gültige Konfiguration, Legacy-Kardinalitätsschätzung für sekundäres Objekt Primär {Primary|Off|On}
DbScopedConfigParameterSniffing PARAMETER_SNIFFING2 Datenbankweit gültige Konfiguration, Parameterermittlung On {Ein|Aus}
DbScopedConfigParameterSniffingSecondary PARAMETER_SNIFFING_SECONDARY2 Datenbankweit gültige Konfiguration, Parameterermittlung für sekundäre Objekte Primär {Primary|Off|On}
DbScopedConfigOptimizerHotfixes OPTIMIZER_HOTFIXES2 Datenbankbereichskonfiguration, Hotfixes für Abfrageoptimierer Off {Off|On}
DbScopedConfigOptimizerHotfixesSecondary OPTIMIZER_HOTFIXES_SECONDARY2 Datenbankweit gültige Konfiguration, Hotfixes für Abfrageoptimierer für sekundäre Objekte Primär {Primary|Off|On}
DbScopedConfigMaxDOP MAXDOP2 Datenbankbereichskonfiguration, Max. Parallelitätsgrad 0 {integer}
DbScopedConfigMaxDOPSecondary MAXDOP_SECONDARY2 Datenbankweit gültige Konfiguration, Max. Grad an Parallelität in sekundärer Datenbank {integer}
DbScopedConfigDWCompatibilityLevel DW_COMPATIBILITY_LEVEL2 Datenbankbereichskonfiguration, DW-Kompatibilitätsstufe 0 {0|10|20|30|40|50|9000}3
DefaultCollation COLLATE4 Datenbankeinstellungen, Datenbanksortierung SQL_Latin1_General_CP1_CI_AS Siehe SQL Server-Sortierungsname für gültige Werte.
DefaultCursor CURSOR_DEFAULT Datenbankeinstellungen, Betriebsbereit, Standardcursor Local {Global|Lokal}
DefaultFilegroup Datenbankeinstellungen, Betriebsbereit, Standarddateigruppe Primär {string}
DefaultFileStreamFilegroup Datenbankeinstellungen, Betriebsbereit, Standard-Filestream-Dateigruppe {string}
DefaultSchema Allgemeine Projekteinstellung, Standardschema dbo {string}
DelayedDurability DELAYED_DURABILITY Datenbankeinstellungen, Betrieb, Zeitverzögerte Dauerhaftigkeit von Transaktionen DISABLED {DISABLED|ALLOWED|FORCED}
DSP Die Zielplattform für das SQL-Projekt Gültige Werte finden Sie auf der Zielplattform .
Volltextsuche aktivieren Datenbankeinstellungen, Volltextsuche aktivieren Richtig {Wahr|Falsch}
FileStreamDirectoryName FILESTREAM (DIRECTORY_NAME) Datenbankeinstellungen, DATEISTREAM-Verzeichnisname {string}
IsBrokerPriorityHonored HONOR_BROKER_PRIORITY Datenbankeinstellungen, Brokerpriorität gewürdigt Falsch {Wahr|Falsch}
IsChangeTrackingAutoCleanupOn CHANGE_TRACKING Datenbanken, Betriebsbereit, Automatische Bereinigung der Änderungsnachverfolgung Richtig {Wahr|Falsch}
IsChangeTrackingOn CHANGE_TRACKING Datenbankeinstellungen, Betrieb, Änderungsverfolgung Falsch {Wahr|Falsch}
IstVerschlüsselungAktiv ENCRYPTION Datenbankeinstellungen, Verschlüsselung aktiviert Falsch {Wahr|Falsch}
IsLedgerOn LEDGER4 Datenbankeinstellungen, Ledger aktivieren Falsch {True|False}
IsNestedTriggersOn NESTED_TRIGGERS Datenbankeinstellungen, geschachtelte Trigger aktiviert Richtig {True|False}
IsTransformNoiseWordsOn TRANSFORM_NOISE_WORDS Datenbankeinstellungen, Füllwörter transformieren Falsch {True|False}
MemoryOptimizedElevateToSnapshot MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT Datenbankeinstellungen, betriebsbereit, arbeitsspeicheroptimiertes Erhöhen auf Momentaufnahme Falsch {True|False}
ModelCollation Projekteinstellungen, Sortierung 1033,CI {integer language id}, {CI|CS}
NonTransactedFileStreamAccess NON_TRANSACTED_ACCESS Datenbankeinstellungen, FILESTREAM nicht-transaktionaler Zugriff OFF {OFF|READ_ONLY|FULL}
NumericRoundAbort NUMERIC_ROUNDABORT Datenbankeinstellungen, SET NUMERIC_ROUNDABORT Falsch {Wahr|Falsch}
OutputPath Buildeinstellungen, Ausgabepfad bin\Debug und bin\Release {string}
PageVerify PAGE_VERIFY Datenbankeinstellungen, Betriebsbereit, Seite überprüfen NICHTS {NONE|TORN_PAGE_DETECTION|CHECKSUM}
Parametrisierung PARAMETERIZATION Datenbankeinstellungen, Parameterisierung SIMPLE {SIMPLE|FORCED}
QueryStoreCaptureMode QUERY_STORE (QUERY_CAPTURE_MODE) Datenbankeinstellungen, Betriebsmodus, Abfragespeichererfassungsmodus ALL {OFF|ALL|AUTO}
QueryStoreDesiredState QUERY_STORE (OPERATION_MODE) Datenbankeinstellungen, Betriebsmodus, Abfragespeichermodus OFF {OFF|READ_WRITE|READ_ONLY}
QueryStoreFlushInterval QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS) Datenbankeinstellungen, Betriebs-, Abfragespeicher-Datenlöschintervall (Sekunden) 900 {integer}
QueryStoreIntervalLength QUERY_STORE (INTERVAL_LENGTH_MINUTES) Datenbankeinstellungen, Betriebs-, Abfragespeicher-Intervalllänge (Minuten) 60 {integer}
QueryStoreMaxPlansPerQuery QUERY_STORE (MAX_PLANS_PER_QUERY) Datenbankeinstellungen, Betriebsbereit, Max. Pläne pro Abfrage im Abfragespeicher 200 {integer}
QueryStoreMaxStorageSize QUERY_STORE (MAX_STORAGE_SIZE_MB) Datenbankeinstellungen, Betriebs-, Abfragespeicher-maximale Speichergröße (MB) 100 {integer}
QueryStoreStaleQueryThreshold QUERY_STORE (STALE_QUERY_THRESHOLD_DAYS) Datenbankeinstellungen, Betriebsbereit, Abfragespeicher-Schwellenwert für veraltete Abfragen (Tage) 367 {integer}
QuotedIdentifier QUOTED_IDENTIFIER Datenbankeinstellungen, SET QUOTED_IDENTIFIER Richtig {True|False}
ReadCommittedSnapshot READ_COMMITTED_SNAPSHOT Datenbankeinstellungen, Betriebsbereit, READ COMMITTED-Momentaufnahme Falsch {Wahr|Falsch}
Wiederherstellung RECOVERY Datenbankeinstellungen, Betriebsbereit, Wiederherstellung FULL {FULL|SIMPLE|BULK_LOGGED}
RecursiveTriggersEnabled RECURSIVE_TRIGGERS Datenbankeinstellungen, rekursive Trigger aktiviert Falsch {Wahr|Falsch}
ServiceBrokerOption SERVICE_BROKER Datenbankeinstellungen, Dienstbrokeroptionen DisableBroker {Broker deaktivieren|Broker aktivieren|Neuer Broker|Broker-Konversationsfehler}
SuppressTSqlWarnings Buildeinstellungen, T-SQL-Warnungen unterdrücken (durch Trennzeichen getrennte Liste der T-SQL-Warnungscodes) {string}
Zielwiederherstellungszeitraum Datenbankeinstellungen, Betriebsbereit, Zielwiederherstellungszeit (Sekunden) Gibt die Frequenz indirekter Prüfpunkte auf Basis einzelner Datenbanken an. 60 {integer}
Zielwiederherstellungszeiteinheit Datenbankeinstellungen, betriebsbereit, Zielwiederherstellungszeit Sekunden {MINUTEN|SEKUNDEN}
TreatTSqlWarningsAsErrors Buildeinstellungen, T-SQL-Warnungen als Fehler behandeln Falsch {Wahr|Falsch}
Vertrauenswürdig TRUSTWORTHY Datenbankeinstellungen, Vertrauenswürdig Falsch {Wahr|Falsch}
TwoDigitYearCutoff TWO_DIGIT_YEAR_CUTOFF Datenbankeinstellungen, Zweistellige Jahreskürzung 2049 {integer}
Aktualisierungsoptionen db_update_option Datenbankeinstellungen, Updateoptionen Lesen_Schreiben {READ_WRITE|READ_ONLY}
ValidateCasingOnIdentifiers Allgemeine Projekteinstellung, Überprüfen der Groß-/Kleinschreibung von Bezeichnern Richtig {Wahr|Falsch}
  1. Der Standardwert unterscheidet sich je nach Moduledition und Servereinstellungen.
  2. Optionen für Datenbankweit gültige Konfiguration
  3. AUTO wird mit dem Wert 0 festgelegt.
  4. Gilt nur als CREATE DATABASEOption .