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