Sdílet prostřednictvím


Vlastnosti projektů SQL

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL databáze v Microsoft Fabric

Kromě obsahu jednotlivých souborů .sql obsahují databázové projekty SQL vlastnosti, které definují chování projektu a nastavení na úrovni databáze. Tyto vlastnosti jsou uloženy v souboru .sqlproj a lze je nastavit úpravou .sqlproj souboru přímo. Některé nástroje projektů SQL, například Visual Studio a VS Code, poskytují přístup k úpravám několika nebo mnoha vlastností projektu v grafickém uživatelském rozhraní. Tento článek obsahuje přehled vlastností, které můžete nastavit pro projekty databáze SQL.

Mezi běžně používané vlastnosti projektů SQL patří:

Zakázání změn možností databáze

Během publikování projektu SQL se změny možností databáze skriptují na základě hodnot definovaných ve vlastnostech projektu a výchozích hodnotách projektu. Pokud chcete zabránit úpravám možností databáze během publikování, použijte nástroj, jako je rozhraní příkazového řádku SqlPackage nebo Visual Studio, nastavte vlastnost publikování na ScriptDatabaseOptions na false. Toto nastavení lze také začlenit do profilu publikování.

Společné vlastnosti projektu

Vlastnost cílové platformy určuje verzi SQL Serveru, na kterou projekt cílí. Vlastnost DSP slouží k nastavení cílové platformy pro projekt SQL. Další informace o cílové platformě najdete v článku cílové platformě.

Analýza kódu může výrazně zlepšit proces kontinuální integrace a nasazování zachycením potenciálních problémů v rané fázi životního cyklu vývoje. Přečtěte si další informace o povolení analýzy kódu a zahrnutí vlastních pravidel v článku analýze kódu SQL.

Vlastnosti aplikace datové úrovně

Následující vlastnosti slouží k definování aplikace datové vrstvy (DAC), která se vytvoří při sestavení projektu SQL.

  • DacApplicationName: Název aplikace datové vrstvy .dacpac. Výchozí hodnota je název projektu.
  • DacDescription: Volitelný popis aplikace datové vrstvy .dacpac.
  • DacVersion: Verze datové vrstvy aplikace .dacpac. Výchozí hodnota je 1.0.0.0.

Výchozí schéma

Vlastnost DefaultSchema nastaví výchozí schéma pro projekt SQL. Tato vlastnost se vztahuje na 1-dílné pojmenované objekty. Výchozí hodnota je dbo.

Upozornění T-SQL

Vlastnosti SuppressTSqlWarnings a TreatTSqlWarningsAsErrors řídí způsob zpracování upozornění T-SQL během sestavování projektu. Vlastnost SuppressTSqlWarnings potlačí upozornění T-SQL během sestavení projektu, která jsou určena jako seznam chyb oddělených čárkami.

Vlastnost TreatTSqlWarningsAsErrors zpracovává upozornění T-SQL jako chyby, což způsobuje selhání sestavení při upozorněních T-SQL. Výchozí hodnota pro TreatTSqlWarningsAsErrors je False.

Příklad použití vlastností projektu

Následující příklad ukazuje, jak nastavit vlastnosti CompatibilityMode, IsChangeTrackingOna TreatTSqlWarningsAsErrors v souboru projektu SQL. Vlastnost CompatibilityMode je nastavena na 130, vlastnost IsChangeTrackingOn je nastavena na Truea vlastnost TreatTSqlWarningsAsErrors je nastavena na True. Vlastnost TreatSqlWarningsAsErrors je nastavená pouze na True v konfiguraci sestavení 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>

Všechny vlastnosti projektu

Některé vlastnosti projektu jsou přidruženy k možnostem databáze, které platí pouze pro databáze SQL Serveru nebo konkrétní verze SQL Serveru. Než do projektu zahrnete vlastnost projektu, projděte si přidruženou dokumentaci pro možnost databáze a seznamte se s chováním vlastností a požadavků na databázi.

Property možnost DATABASE SET Popisek uživatelského rozhraní Výchozí hodnota projektu SQL Povolené hodnoty
AllowSnapshotIsolation ALLOW_SNAPSHOT_ISOLATION Nastavení databáze, Provozní, Povolit izolaci snímků False {True|False}
AnsiNulls ANSI_NULLS Nastavení databáze, SET ANSI_NULLS True {True|False}
AnsiPadding ANSI_PADDING Nastavení databáze, SET ANSI_PADDING True {True|False}
AnsiWarnings ANSI_WARNINGS Nastavení databáze, SET ANSI_WARNINGS True {True|False}
ArithAbort ARITHABORT Nastavení databáze, SET ARITHABORT True {True|False}
AutoClose AUTO_CLOSE Nastavení databáze, Provozní, Automatické zavření False {True|False}
AutoCreateStatistics AUTO_CREATE_STATISTICS Nastavení databáze, Provozní, Automatické vytváření statistik True {True|False}
AutoCreateStatisticsIncremental AUTO_CREATE_STATISTICS (INCREMENTAL) Nastavení databáze, Provozní, Automatické přírůstkové vytváření False {True|False}
AutoShrink AUTO_SHRINK Nastavení databáze, Provozní, Automatické zmenšení False {True|False}
AutoUpdateStatistics AUTO_UPDATE_STATISTICS Nastavení databáze, Provozní, Statistika automatické aktualizace True {True|False}
AutoUpdateStatisticsAsynchronously AUTO_UPDATE_STATISTICS_ASYNC Nastavení databáze, Provozní, Automatické aktualizace statistiky asynchronně False {True|False}
ChangeTrackingRetentionPeriod CHANGE_RETENTION Nastavení databáze, Provozní nastavení, Doba uchovávání změn sledování 2 {integer}
ChangeTrackingRetentionUnit CHANGE_RETENTION Nastavení databáze, Provozní nastavení, Doba uchovávání změn sledování MINUTES {DAYS|HOURS|MINUTES}
CloseCursorOnCommitEnabled CURSOR_CLOSE_ON_COMMIT Nastavení databáze, Provozní, Zavření kurzoru při potvrzení je povoleno False {True|False}
CompatibilityMode COMPATIBILITY_LEVEL Nastavení databáze, úroveň kompatibility {100|110|120|130|140|150|160|170}1
ConcatNullYieldsNull CONCAT_NULL_YIELDS_NULL Nastavení databáze, SET CONCAT_NULL_YIELDS_NULL True {True|False}
Containment CONTAINMENT Nastavení databáze, omezení NONE {NONE|PARTIAL}
DacApplicationName Vlastnosti aplikace datové vrstvy (.dacpac) a název Název projektu {string}
DacDescription Vlastnosti aplikace datové vrstvy (.dacpac) a popis {string}
DacVersion Vlastnosti aplikace datové vrstvy (.dacpac), verze 1.0.0.0 {sémantické číslo verze}
DatabaseAccess db_user_access_option Nastavení databáze, přístup k databázi MULTI_USER {MULTI_USER|SINGLE_USER|RESTRICTED_USER}
DatabaseChaining DB_CHAINING Nastavení databáze, řetězení databází False {True|False}
DatabaseDefaultFulltextLanguage DEFAULT_FULLTEXT_LANGUAGE Nastavení databáze, výchozí jazyk fulltextu 1033 {celé číslo ID jazyka}
DatabaseDefaultLanguage DEFAULT_LANGUAGE Nastavení databáze, výchozí jazyk 1033 {celé číslo ID jazyka}
DatabaseState db_state_option Nastavení databáze, stav databáze ONLINE {ONLINE|OFFLINE}
DbScopedConfigLegacyCardinalityEstimation LEGACY_CARDINALITY_ESTIMATION 2 Konfigurace s vymezeným oborem databáze, odhad kardinality ve starším režimu Off {Off|On}
DbScopedConfigLegacyCardinalitySecondaryEstimation LEGACY_CARDINALITY_SECONDARY_ESTIMATION 2 Konfigurace s vymezeným oborem databáze, historický odhad kardinality pro sekundární fázi/sekundární indexy Primary {Primary|Off|On}
DbScopedConfigParameterSniffing PARAMETER_SNIFFING 2 Konfigurace s vymezeným oborem databáze, šifrování parametrů On {On|Off}
DbScopedConfigParameterSniffingSecondary PARAMETER_SNIFFING_SECONDARY 2 Konfigurace s vymezeným oborem databáze, zjišťování parametrů pro sekundární Primary {Primary|Off|On}
DbScopedConfigOptimizerHotfixes OPTIMIZER_HOTFIXES 2 Konfigurace s vymezeným oborem databáze, opravy hotfix optimalizátoru dotazů Off {Off|On}
DbScopedConfigOptimizerHotfixesSecondary OPTIMIZER_HOTFIXES_SECONDARY 2 Konfigurace s vymezením oboru databáze, opravy hotfix pro optimalizátor dotazů pro sekundární servery Primary {Primary|Off|On}
DbScopedConfigMaxDOP MAXDOP 2 Konfigurace v rozsahu databáze, maximální stupně paralelismu 0 {integer}
DbScopedConfigMaxDOPSecondary MAXDOP_SECONDARY 2 Konfigurace s oborem databáze, maximální počet stupňů paralelismu pro sekundární úlohy {integer}
DbScopedConfigDWCompatibilityLevel DW_COMPATIBILITY_LEVEL 2 Konfigurace s vymezeným oborem databáze, úroveň kompatibility DW 0 {0|10|20|30|40|50|9000}3
DefaultCollation COLLATE 4 Nastavení databáze, kolace databáze SQL_Latin1_General_CP1_CI_AS Pro platné hodnoty viz název kolace SQL Serveru.
DefaultCursor CURSOR_DEFAULT Nastavení databáze, Provozní, Výchozí kurzor Local {Global|Local}
DefaultFilegroup Nastavení databáze, Provozní, Výchozí skupina souborů PRIMARY {string}
DefaultFileStreamFilegroup Nastavení databáze, Provozní, Výchozí souborová skupina pro filestream {string}
DefaultSchema Obecné nastavení projektu, výchozí schéma dbo {string}
DelayedDurability DELAYED_DURABILITY Nastavení databáze, Provozní, Zpožděná trvanlivost transakcí DISABLED {DISABLED|ALLOWED|FORCED}
DSP Cílová platforma pro projekt SQL Podívejte se na cílovou platformu pro platné hodnoty.
EnableFullTextSearch Nastavení databáze, povolení fulltextové vyhledávání True {True|False}
FileStreamDirectoryName FILESTREAM (DIRECTORY_NAME) Nastavení databáze, název adresáře FILESTREAM {string}
IsBrokerPriorityHonored HONOR_BROKER_PRIORITY Nastavení databáze, priorita zprostředkovatele byla dodržena. False {True|False}
IsChangeTrackingAutoCleanupOn CHANGE_TRACKING Nastavení databáze, Provozní, Automatické vyčištění sledování změn True {True|False}
IsChangeTrackingOn CHANGE_TRACKING Nastavení databáze, Provozní, Sledování změn False {True|False}
IsEncryptionOn ENCRYPTION Nastavení databáze, povolené šifrování False {True|False}
IsLedgerOn LEDGER 4 Nastavení databáze, aktivace účetní knihy False {True|False}
IsNestedTriggersOn NESTED_TRIGGERS Nastavení databáze, povolené vnořené triggery True {True|False}
IsTransformNoiseWordsOn TRANSFORM_NOISE_WORDS Nastavení databáze, transformace šumových slov False {True|False}
MemoryOptimizedElevateToSnapshot MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT Nastavení databáze, provozní, optimalizovaná paměť, povýšení na snímek False {True|False}
ModelCollation Nastavení projektu, úprava řazení 1033,CI {celé číslo ID jazyka}, {CI|CS}
NonTransactedFileStreamAccess NON_TRANSACTED_ACCESS Nastavení databáze, přístup FILESTREAM bez transakce OFF {OFF|READ_ONLY|FULL}
NumericRoundAbort NUMERIC_ROUNDABORT Nastavení databáze, parametr SET NUMERIC_ROUNDABORT False {True|False}
OutputPath Nastavení sestavení, výstupní cesta bin\Debug a bin\Release {string}
PageVerify PAGE_VERIFY Nastavení databáze, Provozní, Ověření stránky NONE {NONE|TORN_PAGE_DETECTION|CHECKSUM}
Parameterization PARAMETERIZATION Nastavení databáze, parametrizace SIMPLE {SIMPLE|FORCED}
QueryStoreCaptureMode QUERY_STORE (QUERY_CAPTURE_MODE) Nastavení databáze, Provozní režim, Režim zachytávání úložiště dotazů ALL {OFF|ALL|AUTO}
QueryStoreDesiredState QUERY_STORE (OPERATION_MODE) Nastavení databáze, Provozní režim, Režim operace úložiště dotazů OFF {OFF|READ_WRITE|READ_ONLY}
QueryStoreFlushInterval QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS) Nastavení databáze, Provozní nastavení, Interval vyprázdnění dat úložiště dotazů (sekundy) 900 {integer}
QueryStoreIntervalLength QUERY_STORE (INTERVAL_LENGTH_MINUTES) Nastavení databáze, Provozní, Délka intervalu úložiště dotazů (minuty) 60 {integer}
QueryStoreMaxPlansPerQuery QUERY_STORE (MAX_PLANS_PER_QUERY) Nastavení databáze, Provozní, Úložiště dotazů – maximální počet plánů na jeden dotaz 200 {integer}
QueryStoreMaxStorageSize QUERY_STORE (MAX_STORAGE_SIZE_MB) Nastavení databáze, Provozní, Úložiště dotazů – maximální velikost úložiště (MB) 100 {integer}
QueryStoreStaleQueryThreshold QUERY_STORE (STALE_QUERY_THRESHOLD_DAYS) Nastavení databáze, Provozní, Úložiště dotazů – prahová hodnota zastaralého dotazu (dny) 367 {integer}
QuotedIdentifier QUOTED_IDENTIFIER Nastavení databáze, SET QUOTED_IDENTIFIER True {True|False}
ReadCommittedSnapshot READ_COMMITTED_SNAPSHOT Nastavení databáze, operační, čtení potvrzeného snímku False {True|False}
Recovery RECOVERY Nastavení databáze, provozní, obnovení FULL {FULL|SIMPLE|BULK_LOGGED}
RecursiveTriggersEnabled RECURSIVE_TRIGGERS Nastavení databáze, povolené rekurzivní triggery False {True|False}
ServiceBrokerOption SERVICE_BROKER Nastavení databáze, možnosti služby Service Broker DisableBroker {DisableBroker|EnableBroker|NewBroker|ErrorBrokerConversations}
SuppressTSqlWarnings Nastavení sestavení, potlačení upozornění T-SQL (seznam kódů upozornění T-SQL oddělený čárkami) {string}
TargetRecoveryTimePeriod Nastavení databáze, provozní, cílový čas obnovení (sekundy) Určuje frekvenci nepřímých kontrolních bodů pro jednotlivé databáze. 60 {integer}
TargetRecoveryTimeUnit Nastavení databáze, Provozní, cílový čas obnovení SECONDS {MINUTES|SECONDS}
TreatTSqlWarningsAsErrors Nastavení sestavení, zpracování upozornění T-SQL jako chyb False {True|False}
Trustworthy TRUSTWORTHY Nastavení databáze, důvěryhodnost False {True|False}
TwoDigitYearCutoff TWO_DIGIT_YEAR_CUTOFF Nastavení databáze, hranice pro dvoumístné roky 2049 {integer}
UpdateOptions db_update_option Nastavení databáze, možnosti aktualizace READ_WRITE {READ_WRITE|READ_ONLY}
ValidateCasingOnIdentifiers Obecné nastavení projektu, ověřit správnost velikosti písmen identifikátorů True {True|False}
  1. Výchozí hodnota se liší v závislosti na edici modulu a nastavení serveru.
  2. Konfigurační možnosti s vymezeným oborem databáze.
  3. Funkce AUTO je nastavena s hodnotou 0.
  4. Platí pouze jako možnost CREATE DATABASE.