Свойства проектов SQL
применяется:SQL Server
База данных SQL Azure
Управляемый экземпляр SQL Azure
База данных SQL в Microsoft Fabric
Помимо содержимого отдельных файлов .sql
, проекты базы данных SQL содержат свойства, определяющие поведение проекта и параметры уровня базы данных. Эти свойства хранятся в файле .sqlproj
и могут быть заданы путем редактирования файла .sqlproj
напрямую. Некоторые средства проектов SQL, такие как Visual Studio и VS Code, предоставляют доступ к редактированию нескольких или многих свойств проекта в графическом пользовательском интерфейсе. В этой статье представлен обзор свойств, которые можно задать для проектов базы данных SQL.
К часто используемым свойствам проектов SQL относятся:
- целевая платформа (DSP)
- анализ кода
- DacApplicationName и DacVersion
- схема по умолчанию
- TreatTSqlWarningsAsErrors
Отключение изменений параметров базы данных
В процессе публикации проекта SQL изменения опций базы данных формируются на основе значений, определенных в свойствах проекта и значениях проекта по умолчанию. Чтобы предотвратить изменение параметров базы данных во время публикации с помощью средства, например ИНТЕРФЕЙСА командной строки SqlPackage или Visual Studio, задайте ScriptDatabaseOptions
для свойства публикации значение false. Этот параметр также можно включить в профиль публикации.
Общие свойства проекта
Свойство целевой платформы указывает версию SQL Server, предназначенную для проекта. Свойство DSP
используется для задания целевой платформы для проекта SQL. Дополнительные сведения о целевой платформе см. в статье .
Анализ кода может значительно улучшить процесс непрерывной интеграции и развертывания, перехватив потенциальные проблемы в начале жизненного цикла разработки. Узнайте больше о включении анализа кода и пользовательских правил в статье "Анализ кода SQL".
Свойства приложения уровня данных
Следующие свойства используются для определения приложения уровня данных , созданного при создании проекта SQL.
-
DacApplicationName: название приложения уровня данных
.dacpac
. Значением по умолчанию является имя проекта. -
DacDescription: необязательное описание приложения уровня данных
.dacpac
. -
DacVersion: версия приложения уровня данных
.dacpac
. Значение по умолчанию —1.0.0.0
.
Схема по умолчанию
Свойство DefaultSchema
задает схему по умолчанию для проекта SQL. Это свойство применяется к одночастным объектам с именами. Значение по умолчанию — dbo
.
Предупреждения T-SQL
Свойства SuppressTSqlWarnings
и TreatTSqlWarningsAsErrors
управляют обработкой предупреждений T-SQL во время сборки проекта. Свойство SuppressTSqlWarnings
подавляет предупреждения T-SQL во время сборки проекта, указанные как разделенный запятыми список чисел ошибок.
Свойство TreatTSqlWarningsAsErrors
обрабатывает предупреждения T-SQL как ошибки, из-за чего любые предупреждения T-SQL приводят к провалу сборки. Значение по умолчанию для TreatTSqlWarningsAsErrors
— False
.
Пример использования свойств проекта
В следующем примере показано, как задать свойства CompatibilityMode
, IsChangeTrackingOn
и TreatTSqlWarningsAsErrors
в файле проекта SQL. Свойство CompatibilityMode
имеет значение 130
, свойство IsChangeTrackingOn
имеет значение True
, а для свойства TreatTSqlWarningsAsErrors
задано значение True
. Свойство TreatSqlWarningsAsErrors
имеет значение только True
в конфигурации сборки 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>
Все свойства проекта
Некоторые свойства проекта связаны с параметрами базы данных, которые применяются только к базам данных SQL Server или определенным версиям SQL Server. Перед включением свойства проекта в проект ознакомьтесь с связанной документацией по параметру базы данных, чтобы понять поведение свойств и требований к базе данных.
Свойство | параметр DATABASE SET |
Метка пользовательского интерфейса | Значение проекта SQL по умолчанию | Допустимые значения |
---|---|---|---|---|
Разрешить изоляцию моментального снимка | ALLOW_SNAPSHOT_ISOLATION |
Параметры базы данных, операционная, разрешить изоляцию моментальных снимков | Ложный | {Истина|Ложь} |
AnsiNulls | ANSI_NULLS |
Параметры базы данных, SET ANSI_NULLS | Истина | {Истина|Ложь} |
AnsiPadding | ANSI_PADDING |
Параметры базы данных, SET ANSI_PADDING | Верно | {Истина|Ложь} |
AnsiWarnings | ANSI_WARNINGS |
Параметры базы данных, SET ANSI_WARNINGS | Истина | {Истина|Ложь} |
ArithAbort | ARITHABORT |
Параметры базы данных, SET ARITHABORT | Верно | {Истина|Ложь} |
АвтоЗакрытие | AUTO_CLOSE |
Параметры базы данных, операции, автоматическое закрытие | Ложный | {Истина|Ложь} |
Автоматическое создание статистики | AUTO_CREATE_STATISTICS |
Параметры базы данных, операционные, автоматическое создание статистики | Правда | {Истинно|Ложно} |
АвтоСжатие | AUTO_SHRINK |
Параметры базы данных, операционная, автоматическое сжатие | Ложный | {Истина|Ложь} |
Автоматическое обновление статистики | AUTO_UPDATE_STATISTICS |
Параметры базы данных, оперативная статистика, автоматическое обновление | Верно | {Истина|Ложь} |
АвтоОбновлениеСтатистикиАсинхронно | AUTO_UPDATE_STATISTICS_ASYNC |
Параметры базы данных, операционные, автоматическое асинхронное обновление статистики | Ложно | {Истина|Ложь} |
Период хранения отслеживания изменений | CHANGE_RETENTION |
Настройки базы данных, рабочий режим, период хранения данных об изменениях | 2 | {integer} |
Единица хранения отслеживания изменений | CHANGE_RETENTION |
Параметры базы данных, операционные настройки, срок хранения данных об отслеживании изменений | ПРОТОКОЛ | {ДНИ|ЧАСЫ|МИНУТЫ} |
CloseCursorOnCommitEnabled | CURSOR_CLOSE_ON_COMMIT |
Параметры базы данных, операционные настройки, закрытие курсора при фиксации включено | Неверно | {Истина|Ложь} |
Режим совместимости | COMPATIBILITY_LEVEL |
Параметры базы данных, уровень совместимости | {100|110|120|130|140|150|160|170}1 | |
ConcatNullYieldsNull | CONCAT_NULL_YIELDS_NULL |
Параметры базы данных, SET CONCAT_NULL_YIELDS_NULL | Правда | {Истина|Ложь} |
Сдерживание | CONTAINMENT |
Параметры базы данных, ограничение | НИКАКОЙ | {NONE|PARTIAL} |
DacApplicationName | Свойства приложения уровня данных (.dacpac ), имя |
Имя проекта | {string} | |
DacDescription | Свойства и описание приложения уровня данных (.dacpac ) |
{string} | ||
DacVersion | Свойства приложения уровня данных (.dacpac ), версия |
1.0.0.0 | {семантический номер версии} | |
DatabaseAccess | db_user_access_option |
Параметры базы данных, доступ к базе данных | МУЛЬТИПОЛЬЗОВАТЕЛЬСКИЙ | {МНОГОПОЛЬЗОВАТЕЛЬСКИЙ|ОДНОПОЛЬЗОВАТЕЛЬСКИЙ|ОГРАНИЧЕННЫЙ ПОЛЬЗОВАТЕЛЬ} |
Цепочка баз данных | DB_CHAINING |
Параметры базы данных, цепочка баз данных | Ложный | {Истина|Ложь} |
ЯзыкПолнотекстовогоПоискаПоУмолчаниюБазыДанных | DEFAULT_FULLTEXT_LANGUAGE |
Параметры базы данных, язык полнотекстового текста по умолчанию | 1033 | {целочисленный идентификатор языка} |
ЯзыкПоУмолчаниюБазыДанных | DEFAULT_LANGUAGE |
Параметры базы данных, язык по умолчанию | 1033 | {целочисленный идентификатор языка} |
DatabaseState | db_state_option |
Параметры базы данных, состояние базы данных | ОНЛАЙН | {ONLINE|ОФФЛАЙН} |
DbScopedConfigLegacyCardinalityEstimation |
LEGACY_CARDINALITY_ESTIMATION
2 |
Конфигурация с областью базы данных, оценка кратности прежних версий | Выкл | {Выкл|Вкл} |
DbScopedConfigLegacyCardinalitySecondaryEstimation |
LEGACY_CARDINALITY_SECONDARY_ESTIMATION
2 |
Конфигурация в пределах базы данных, оценка кардинальности по старому методу для вторичной системы | Первичный | {Primary|Выкл. |Вкл.} |
DbScopedConfigParameterSniffing |
PARAMETER_SNIFFING
2 |
Конфигурация в пределах базы данных, анализ параметров | На | {Вкл|Выкл} |
Параметр конфигурации DB с областью действия Sniffing Secondary |
PARAMETER_SNIFFING_SECONDARY
2 |
Конфигурация с областью базы данных, анализ параметров для вторичной базы данных | Первичный | {Primary|Выкл.|Вкл.} |
DbScopedConfigOptimizerHotfixes |
OPTIMIZER_HOTFIXES
2 |
Конфигурация на уровне базы данных, исправления для оптимизатора запросов | Выкл. | {Выкл|Вкл} |
Дублируемая конфигурация DbScopedConfigOptimizerHotfixesSecondary |
OPTIMIZER_HOTFIXES_SECONDARY
2 |
Конфигурация в пределах базы данных, исправления оптимизатора запросов для вторичных реплик | Первичный | {Primary|Выкл.|Вкл.} |
DbScopedConfigMaxDOP |
MAXDOP
2 |
Конфигурация с областью базы данных, максимальная степень параллелизма | 0 | {integer} |
DbScopedConfigMaxDOPSecondary |
MAXDOP_SECONDARY
2 |
Конфигурация с областью базы данных, максимальная степень параллелизма для вторичной | {integer} | |
DbScopedConfigDWCompatibilityLevel |
DW_COMPATIBILITY_LEVEL
2 |
Конфигурация с областью действия базы данных, уровень совместимости DW | 0 | {0|10|20|30|40|50|9000}3 |
DefaultCollation |
COLLATE
4 |
Параметры базы данных, параметры сортировки базы данных | SQL_Latin1_General_CP1_CI_AS | См. имя сортировки SQL Server для получения информации о допустимых значениях. |
УказательПоУмолчанию | CURSOR_DEFAULT |
Параметры базы данных, рабочий, курсор по умолчанию | Местный | {Global|Local} |
DefaultFilegroup | Параметры базы данных, операционная, файловая группа по умолчанию | ПЕРВИЧНЫЙ | {string} | |
DefaultFileStreamFilegroup | Параметры базы данных, операционные; файловая группа Filestream по умолчанию | {string} | ||
ДефолтнаяСхема | Общие параметры проекта, схема по умолчанию | dbo | {string} | |
Отсроченная надежность | DELAYED_DURABILITY |
Параметры базы данных, операционные, отложенная устойчивость транзакций | НЕТРУДОСПОСОБНЫЙ | {ОТКЛЮЧЕНО|РАЗРЕШЕНО|ПРИНУЖДЕНИЕ} |
Цифровой сигнальный процессор | Целевая платформа для проекта SQL | Сведения о допустимых значениях см. в целевой платформы. | ||
ВключитьПолнотекстовыйПоиск | Параметры базы данных, включение полнотекстового поиска | Правда | {Истина|Ложь} | |
FileStreamDirectoryName |
FILESTREAM (DIRECTORY_NAME ) |
Параметры базы данных, имя каталога FILESTREAM | {string} | |
Учтён ли приоритет брокера | HONOR_BROKER_PRIORITY |
Параметры базы данных, приоритет брокера учитывается | Ложно | {Истина|Ложь} |
Включена ли автоматическая очистка отслеживания изменений | CHANGE_TRACKING |
Параметры базы данных, операционная, отслеживание изменений автоматической очистки | Верно | {Истина|Ложь} |
Включено ли отслеживание изменений | CHANGE_TRACKING |
Параметры базы данных, оперативное, отслеживание изменений | Ложный | {Истина|Ложь} |
ШифрованиеВключено | ENCRYPTION |
Параметры базы данных, включенное шифрование | Ложный | {Истина|Ложь} |
IsLedgerOn |
LEDGER
4 |
Параметры базы данных, включение реестра | Ложный | {Истина|Ложь} |
ВключеныВложенныеТриггеры | NESTED_TRIGGERS |
Параметры базы данных, включены вложенные триггеры | Правда | {Истина|Ложь} |
ПереводитьФоновыеСловаВключено | TRANSFORM_NOISE_WORDS |
Параметры базы данных, преобразование шумовых слов | Неверно | {Истина|Ложь} |
ОптимизацияПамятиПовыситьДоСнимка | MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT |
Параметры базы данных, операционные, оптимизация памяти, перевести в моментальный снимок | Ложь | {Истина|Ложь} |
ModelCollation | Параметры проекта, параметры сортировки | 1033,CI | {целочисленный идентификатор языка}, {CI|CS} | |
Доступ к потоку файлов без транзакций (NonTransactedFileStreamAccess) | NON_TRANSACTED_ACCESS |
Параметры базы данных, доступ к FILESTREAM без транзакций | ВЫКЛ | {ВЫКЛ|ТОЛЬКО_ДЛЯ_ЧТЕНИЯ|ПОЛНЫЙ} |
NumericRoundAbort | NUMERIC_ROUNDABORT |
Параметры базы данных, SET NUMERIC_ROUNDABORT | Неправда | {Истина|Ложь} |
ПутьВывода | Параметры сборки, путь вывода |
bin\Debug и bin\Release |
{string} | |
PageVerify | PAGE_VERIFY |
Параметры базы данных, режим эксплуатации, проверка страницы | НИКАКОЙ | {NONE|TORN_PAGE_DETECTION|КОНТРОЛЬНАЯ СУММА} |
Параметризация | PARAMETERIZATION |
Параметры базы данных, параметризация | ПРОСТОЙ | {SIMPLE|ПРИНУДИТЕЛЬНЫЙ} |
QueryStoreCaptureMode |
QUERY_STORE (QUERY_CAPTURE_MODE ) |
Параметры базы данных, Операционный, режим захвата хранилища запросов | ВСЕ | {ВЫКЛ|ВСЕ|АВТО} |
QueryStoreDesiredState |
QUERY_STORE (OPERATION_MODE ) |
Параметры базы данных, рабочий режим, режим работы хранилища запросов | ВЫКЛ. | {ВЫКЛЮЧЕНО|ЧТЕНИЕ_И_ЗАПИСЬ|ТОЛЬКО_ЧТЕНИЕ} |
QueryStoreFlushInterval |
QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS ) |
Параметры базы данных, рабочий, интервал очистки данных хранилища запросов (секунды) | 900 | {integer} |
QueryStoreIntervalLength |
QUERY_STORE (INTERVAL_LENGTH_MINUTES ) |
Параметры базы данных, Операционные, длительность интервала хранилища запросов (минуты) | 60 | {integer} |
QueryStoreMaxPlansPerQuery (Максимальное количество планов для одного запроса в Query Store) |
QUERY_STORE (MAX_PLANS_PER_QUERY ) |
Параметры базы данных, операционные настройки, максимальное количество планов хранилища запросов на каждый запрос | 200 | {integer} |
Максимальный размер хранилища запроса (QueryStoreMaxStorageSize) |
QUERY_STORE (MAX_STORAGE_SIZE_MB ) |
Параметры базы данных, операционный, хранилище запросов, максимальный размер хранилища (МБ) | 100 | {integer} |
QueryStoreStaleQueryThreshold |
QUERY_STORE (STALE_QUERY_THRESHOLD_DAYS ) |
Настройки базы данных, операционные, порог устаревания запросов в хранилище запросов (в днях) | 367 | {integer} |
идентификатор в кавычках | QUOTED_IDENTIFIER |
Параметры базы данных, SET QUOTED_IDENTIFIER | Истина | {Истина|Ложь} |
ReadCommittedSnapshot | READ_COMMITTED_SNAPSHOT |
Параметры базы данных, операционный, считывания зафиксированного моментального снимка | Ложный | {Истина|Ложь} |
Выздоровление | RECOVERY |
Параметры базы данных, операционная, восстановление | ПОЛНЫЙ | {FULL|SIMPLE|BULK_LOGGED} |
Включены Рекурсивные Триггеры | RECURSIVE_TRIGGERS |
Параметры базы данных, включенные рекурсивные триггеры | Ложный | {Истина|Ложь} |
ServiceBrokerOption | SERVICE_BROKER |
Параметры базы данных, параметры компонента Service Broker | DisableBroker | {DisableBroker|EnableBroker|NewBroker|ErrorBrokerConversations} |
SuppressTSqlWarnings | Параметры сборки, подавление предупреждений T-SQL (разделенный запятыми список кодов предупреждений T-SQL) | {string} | ||
ЦелевойПериодВосстановления | Параметры базы данных, рабочее, целевое время восстановления (секунды) | Указывает частоту косвенных контрольных точек на основе базы данных. | 60 | {integer} |
Целевая единица времени восстановления | Параметры базы данных, оперативное, целевое время записи | СЕКУНДЫ | {МИНУТЫ|СЕКУНДЫ} | |
Обрабатывать предупреждения T-SQL как ошибки | Параметры сборки, рассматривать предупреждения T-SQL как ошибки | Неверно | {Истина|Ложь} | |
Заслуживающий доверия | TRUSTWORTHY |
Параметры базы данных, надежность | Ложный | {Истина|Ложь} |
Порог двухзначного года | TWO_DIGIT_YEAR_CUTOFF |
Параметры базы данных, порог отсечения двухзначного года | 2049 | {integer} |
Параметры обновления | db_update_option |
Параметры базы данных, параметры обновления | Чтение и запись | {READ_WRITE (чтение и запись)|READ_ONLY (только чтение)} |
ПроверитьРегистрыИдентификаторов | Общая настройка проекта, проверка регистра идентификаторов | Истинный | {Истина|Ложь} |
- Значение по умолчанию отличается в зависимости от версии движка и настроек сервера.
- Параметры конфигурации с ограничением области базы данных.
- AUTO устанавливается со значением 0.
- Применяется только в качестве параметра
CREATE DATABASE
.