Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:SQL Server
База данных
SQL AzureУправляемый экземпляр
SQL AzureAzure Synapse Analytics
Система платформы аналитики (PDW)
База данных SQL в предварительной версии Microsoft Fabric
Для указанной базы данных в SQL Server DATABASEPROPERTYEX функция возвращает текущий параметр указанной базы данных или свойства.
Соглашения о синтаксисе Transact-SQL
Синтаксис
DATABASEPROPERTYEX ( database , property )
Аргументы
база данных
Выражение, указывающее имя базы данных, для которой DATABASEPROPERTYEX возвращаются именованные сведения о свойстве. Аргумент database имеет тип данных nvarchar(128).
Для База данных SQL DATABASEPROPERTYEX требуется имя текущей базы данных.
NULL Возвращается для всех свойств, если задано другое имя базы данных.
свойство
Выражение, которое задает имя возвращаемого свойства базы данных. Аргумент property имеет тип данных varchar(128) и может принимать одно из значений, приведенных в таблице ниже.
Примечание.
Если база данных еще не запущена, вызовы для DATABASEPROPERTYEX возврата NULL , если DATABASEPROPERTYEX эти значения извлекаются путем прямого доступа к базе данных, а не извлекаются из метаданных. База данных с AUTO_CLOSE установленным значением ON(или в противном случае вне сети) определяется как "не запущена".
| Свойство | Описание | Возвращенное значение |
|---|---|---|
CollationТип данных: nvarchar(128) |
Имя параметров сортировки, установленных для базы данных по умолчанию. | Имя сортировки. Если NULLбаза данных не запущена. |
ComparisonStyleТип данных: int |
Стиль сравнения Windows для параметров сортировки. Используйте следующие значения стиля, чтобы создать растровое изображение для готового ComparisonStyle значения:- 1: игнорировать регистр- 2: игнорировать акцент- 65536: игнорировать kana- 131072: игнорировать ширинуНапример, значение по умолчанию 196609 является результатом объединения регистра игнорировать, игнорировать kana и игнорировать параметры ширины . |
Возвращает стиль сравнения. Возвращается 0 для всех двоичных параметров сортировки. |
EditionТип данных: nvarchar(64) |
Уровень выпуска или службы базы данных. | - General Purpose- Business Critical- Basic- Standard- Premium- System (для master базы данных)- FabricSQLDB: база данных SQL в предварительной версии Microsoft Fabric- NULL: база данных не запущена.Область применения: База данных SQL Azure, база данных SQL в Microsoft Fabric Preview, Azure Synapse Analytics. |
IsAnsiNullDefaultТип данных: int |
База данных соответствует правилам ISO для разрешения NULL значений. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsAnsiNullsEnabledТип данных: int |
Все сравнения с NULL неизвестным. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsAnsiPaddingEnabledТип данных: int |
Строки перед сравнением или вставкой дополняются до одной и той же длины. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsAnsiWarningsEnabledТип данных: int |
SQL Server выводит сообщения об ошибках или предупреждения, когда возникают стандартные условия ошибки. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsArithmeticAbortEnabledТип данных: int |
Запрос завершается, если в процессе его выполнения происходит ошибка переполнения или деления на нуль. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsAutoCloseТип данных: int |
После выхода последнего пользователя база данных корректно выключается и освобождает ресурсы. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsAutoCreateStatisticsТип данных: int |
Оптимизатор запросов при необходимости создает статистику по отдельным столбцам для повышения производительности запросов. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsAutoCreateStatisticsIncrementalТип данных: int |
Автоматические статистики в одном столбце создаются в дополнительном виде везде, где это возможно. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данныеотносится к: SQL Server 2014 (12.x) и более поздним версиям. |
IsAutoShrinkТип данных: int |
Файлы базы данных являются кандидатами на автоматическое периодическое сжатие. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsAutoUpdateStatisticsТип данных: int |
Оптимизатор запросов обновляет существующую статистику, используемую в запросе, если она может оказаться устаревшей. |
-
1:Истинный- 0:Ложный- NULL: недопустимый вход |
IsCloneТип данных: int |
База данных — это копия пользовательской базы данных, созданной с DBCC CLONEDATABASEпомощью схемы и статистики. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данныеОбласть применения: SQL Server 2014 (12.x) с пакетом обновления 2 (SP2) и более поздних версий. |
IsCloseCursorsOnCommitEnabledТип данных: int |
При фиксации транзакции все открытые курсоры закрываются. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsDatabaseSuspendedForSnapshotBackupТип данных: int |
База данных приостановлена. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsFulltextEnabledТип данных: int |
В базе данных включены полнотекстовое и семантическое индексирование. |
-
1:Истинный- 0:Ложный- NULL: недопустимый входОбласть применения: SQL Server 2008 (10.0.x) и более поздних версий. Примечание. Значение этого свойства сейчас не учитывается. Полнотекстовый поиск всегда включен для пользовательских баз данных. В будущем выпуске SQL Server будет удалено это свойство. Не используйте это свойство в новой работе разработки и не изменяйте приложения, которые в настоящее время используют это свойство как можно скорее. |
IsInStandByТип данных: int |
В режиме «в сети» база данных доступна только для чтения, при этом разрешен журнал восстановления. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsLocalCursorsDefaultТип данных: int |
Объявления курсора по умолчанию LOCAL. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsMemoryOptimizedElevateToSnapshotEnabledТип данных: int |
Доступ к оптимизированным для памяти таблицам осуществляется с помощью SNAPSHOT изоляции, если параметр TRANSACTION ISOLATION LEVEL сеанса имеет READ COMMITTEDзначение , READ UNCOMMITTEDили более низкий уровень изоляции. |
-
1:Истинный- 0:Ложныйотносится к: SQL Server 2014 (12.x) и более поздним версиям. |
IsMergePublishedТип данных: int |
SQL Server поддерживает публикацию таблиц базы данных для репликации слиянием, если репликация установлена. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsNullConcatТип данных: int |
Возвращает NULLоперанд сцепления null. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsNumericRoundAbortEnabledТип данных: int |
При потере точности в выражениях возникают ошибки. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsOptimizedLockingOnТип данных: int |
Оптимизированная блокировка включена для базы данных. |
-
1:Истинный- 0:Ложный- NULL: недоступноОбласть применения: ПРЕДВАРИТЕЛЬНая версия SQL Server 2025 (17.x) и более поздние версии, База данных SQL Azure,AUTD и база данных SQL в Microsoft Fabric Preview. |
IsParameterizationForcedТип данных: int |
PARAMETERIZATION Параметр базы данных SET — FORCED. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsQuotedIdentifiersEnabledТип данных: int |
Двойные кавычки можно использовать в идентификаторах. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsPublishedТип данных: int |
Если репликация установлена, SQL Server поддерживает публикацию таблиц базы данных для моментального снимка или репликации транзакций. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsRecursiveTriggersEnabledТип данных: int |
Рекурсивное срабатывание триггеров разрешено. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsSubscribedТип данных: int |
База данных подписана на публикацию. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsSyncWithBackupТип данных: int |
База данных — это опубликованная база данных или база данных распространителя, которая поддерживает восстановление, которое не нарушает репликацию транзакций. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsTornPageDetectionEnabledТип данных: int |
Sql Server ядро СУБД обнаруживает неполные операции ввода-вывода, вызванные сбоями питания или другими системными сбоями. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные |
IsVerifiedCloneТип данных: int |
База данных — это только копия пользовательской базы данных, созданная с помощью WITH VERIFY_CLONEDB параметра DBCC CLONEDATABASE. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данныеОбласть применения: SQL Server 2016 (13.x) с пакетом обновления 2 (SP2) и более поздних версий. |
IsXTPSupportedТип данных: int |
Указывает, поддерживает ли база данных OLTP в памяти. Например, создание и использование оптимизированных для памяти таблиц и собственных скомпилированных модулей. Зависит от SQL Server: IsXTPSupported не зависит от существования любой MEMORY_OPTIMIZED_DATA файловой группы, которая необходима для создания In-Memory объектов OLTP. |
-
1:Истинный- 0:Ложный- NULL: недопустимые входные данные, ошибка или неприменимоеОбласть применения: SQL Server 2016 (13.x) и более поздних версий и База данных SQL Azure. |
LastGoodCheckDbTimeТип данных: datetime |
Дата и время последнего успешного DBCC CHECKDB выполнения в указанной базе данных. Если DBCC CHECKDB он не был запущен в базе данных, 1900-01-01 00:00:00.000 возвращается. Для баз данных, являющихся частью группы доступности, LastGoodCheckDbTime возвращает дату и время последнего успешного DBCC CHECKDB выполнения на первичной реплике независимо от того, из какой реплики выполняется команда. |
NULL: недопустимые входные данныеОбласть применения: SQL Server 2016 (13.x) с пакетом обновления 2 (SP2), SQL Server 2017 (14.x) CU9, SQL Server 2019 (15.x) и более поздних версий, Базы данных SQL Azure и базы данных SQL в Microsoft Fabric Preview. |
LCIDТип данных: int |
Код языка Windows для параметров сортировки. | Значение кода языка (в десятичном формате). |
MaxSizeInBytesТип данных: bigint |
Максимальный размер базы данных в байтах. |
-
База данных SQL Azure и Azure Synapse Analytics: значение основано на SLO, если не было приобретено дополнительное хранилище. - vCore: значение равно 1 ГБ увеличивается до максимального размера. - NULL: база данных не запущенаОбласть применения: База данных SQL Azure, база данных SQL в Microsoft Fabric preview и Azure Synapse Analytics. |
RecoveryТип данных: nvarchar(128) |
Модель восстановления базы данных. |
-
FULL: полная модель восстановления- BULK_LOGGED: массовая модель ведения журнала- SIMPLE: простая модель восстановления |
ServiceObjectiveТип данных: nvarchar(32) |
Описывает уровень производительности базы данных в базе данных SQL, базе данных SQL в предварительной версии Microsoft Fabric или Azure Synapse Analytics. | Одно из следующих значений: - NULL: база данных не запущена- Shared (для выпусков Web/Business)- Basic- S0- S1- S2- S3- P1- P2- P3- ElasticPool- System (для master базы данных)- FabricSQLDB: база данных SQL в предварительной версии Microsoft Fabric |
ServiceObjectiveIdТип данных: uniqueidentifier |
Идентификатор цели службы в База данных SQL. | Идентификатор цели службы. |
SQLSortOrderТип данных: tinyint |
Идентификатор порядка сортировки SQL Server, поддерживаемый в более ранних версиях SQL Server. |
-
0: база данных использует параметры сортировки Windows- >0: идентификатор порядка сортировки SQL Server- NULL: недопустимые входные данные или база данных не запущена |
StatusТип данных: nvarchar(128) |
Состояние базы данных. |
ONLINE: база данных доступна для запроса.Заметка: Функция может вернуть состояние ONLINE во время открытия базы данных и еще не восстановлена. Чтобы определить, может ли ONLINE база данных принимать подключения, запросите Collation свойство DATABASEPROPERTYEX. База ONLINE данных может принимать подключения, когда параметры сортировки базы данных возвращают ненулевое значение. Для баз данных AlwaysOn выполните запрос к столбцам database_state или database_state_desc столбцам sys.dm_hadr_database_replica_states.- OFFLINE: база данных была явно отключена.- RESTORING: началось восстановление базы данных.- RECOVERING: восстановление базы данных запущено, и база данных еще не готова к запросам.- SUSPECT: база данных не восстановлена.- EMERGENCY: база данных находится в аварийном состоянии, доступном только для чтения. Доступ ограничен членами sysadmin |
UpdateabilityТип данных: nvarchar(128) |
Указывает, можно ли изменять данные. |
READ_ONLY: база данных поддерживает операции чтения данных, но не изменения данных.- READ_WRITE: база данных поддерживает операции чтения и изменения данных. |
UserAccessТип данных: nvarchar(128) |
Указывает пользователей, имеющих доступ к базе данных. |
SINGLE_USER: одновременно один пользователь db_owner, dbcreator или sysadmin- RESTRICTED_USER: только члены ролей db_owner, dbcreator или sysadmin- MULTI_USER: все пользователи |
VersionТип данных: int |
Внутренний номер версии кода SQL Server, с помощью которого была создана база данных. Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется. | — Номер версии: база данных открыта. - NULL: база данных не запущена. |
ReplicaIDТип данных: nvarchar(128) |
Идентификатор реплики подключенной базы данных или реплики гипермасштабирования. | Возвращает только идентификатор реплики подключенной базы данных или реплики гипермасштабирования. Дополнительные сведения о типах реплик см. в статье "Вторичные реплики с гипермасштабированием". - NULL: не база данных гипермасштабирования или база данных не запущена.относится к: гипермасштабирование базы данных SQL Azure. |
Типы возвращаемых данных
sql_variant
Исключения
Возвращает ошибку NULL или если вызывающий объект не имеет разрешения на просмотр объекта.
В SQL Server пользователь может просматривать только метаданные защищаемых объектов, принадлежащих пользователю или которым предоставлено разрешение. Это правило означает, что встроенные функции метаданных, такие как OBJECT_ID могут возвращать NULL , если у пользователя нет разрешений на объект. Дополнительные сведения см. в разделе "Конфигурация видимости метаданных".
Замечания
Функция DATABASEPROPERTYEX возвращает каждый раз значение только одного свойства. Для отображения значений нескольких свойств используйте представление каталога sys.databases.
Примеры
Примеры кода в этой статье используют базу данных образца AdventureWorks2022 или AdventureWorksDW2022, которую можно скачать с домашней страницы образцов и проектов сообщества Microsoft SQL Server и.
А. Получение состояния параметра базы данных AUTO_SHRINK
В этом примере возвращается состояние AUTO_SHRINK параметра базы данных для AdventureWorks базы данных.
SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'IsAutoShrink');
Вот результирующий набор. Это означает, что AUTO_SHRINK он отключен.
0
В. Получение сортировки по умолчанию для базы данных
В приведенном ниже примере возвращаются несколько атрибутов базы данных AdventureWorks.
SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'Collation') AS Collation,
DATABASEPROPERTYEX('AdventureWorks2022', 'Edition') AS Edition,
DATABASEPROPERTYEX('AdventureWorks2022', 'ServiceObjective') AS ServiceObjective,
DATABASEPROPERTYEX('AdventureWorks2022', 'MaxSizeInBytes') AS MaxSizeInBytes;
Вот результирующий набор.
Collation Edition ServiceObjective MaxSizeInBytes
---------------------------- ------------- ---------------- --------------
SQL_Latin1_General_CP1_CI_AS DataWarehouse DW1000 5368709120
В. Проверка подключения к реплике с помощью DATABASEPROPERTYEX
При использовании функции горизонтального масштабирования базы данных SQL Azure можно проверить, подключены ли вы к реплике только для чтения или нет, выполнив следующий запрос в контексте базы данных. Он возвращается READ_ONLY при подключении к реплике только для чтения. Таким образом можно также узнать, когда запрос выполняется в реплике только для чтения.
SELECT DATABASEPROPERTYEX(DB_NAME(), 'Updateability');