SERVERPROPERTY (Transact-SQL)

Возвращает сведения о свойстве экземпляра сервера.

Применимо для следующих объектов: SQL Server (SQL Server 2008 по текущую версию), База данных SQL Windows Azure (С первоначального выпуска по текущий выпуск).

Значок ссылки на раздел Синтаксические обозначения в Transact-SQL

Синтаксис

SERVERPROPERTY ( propertyname )

Аргументы

  • propertyname
    Выражение, содержащее сведения о свойстве, которые необходимо вернуть для сервера. Аргумент propertyname может иметь одно из следующих значений.

    Свойство

    Возвращаемые значения

    BuildClrVersion

    Версия среды CLR Microsoft .NET Framework, которая использовалась при построении экземпляра SQL Server.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: nvarchar(128)

    Collation

    Имя параметров сортировки для сервера, установленного по умолчанию.

    NULL = недопустимый ввод или произошла ошибка.

    Базовый тип данных: nvarchar(128)

    CollationID

    Идентификатор параметров сортировки SQL Server.

    Базовый тип данных: int

    ComparisonStyle

    Стиль сравнения Windows параметров сортировки.

    Базовый тип данных: int

    ComputerNamePhysicalNetBIOS

    Имя NetBIOS для локального компьютера, на котором работает экземпляр SQL Server.

    Для кластеризованного экземпляра SQL Server на отказоустойчивом кластере это значение изменяется, когда экземпляр SQL Server переключается на другие узлы в отказоустойчивом кластере.

    Для изолированного экземпляра SQL Server это значение остается постоянным и совпадает со значением, возвращаемым свойством MachineName.

    Примечание

    Если экземпляр SQL Server находится в отказоустойчивом кластере и необходимо получить имя экземпляра отказоустойчивого кластера, воспользуйтесь свойством MachineName.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: nvarchar(128)

    Edition

    Установленный выпуск экземпляра SQL Server. Используйте значение этого свойства для определения функций и ограничений, таких как Вычисление производительности выпуска SQL Server. В 64-разрядных версиях компонента Компонент Database Engine к обозначению версии добавляется «(64-разрядная версия)».

    Возвращает:

    выпуск «Enterprise Edition»;

    выпуск «Enterprise Edition: лицензирование по числу ядер»;

    выпуск «Enterprise Evaluation Edition»;

    выпуск «Business Intelligence»;

    выпуск «Developer Edition»;

    выпуск «Express Edition»;

    экспресс-выпуск с дополнительными службами;

    выпуск «Standard Edition»;

    «Web Edition».

    База данных SQL

    Базовый тип данных: nvarchar(128)

    EditionID

    EditionID представляет установленный выпуск продукта для экземпляра SQL Server. Используйте значение этого свойства для определения функций и ограничений, таких как Вычисление производительности выпуска SQL Server.

    1804890536 = Enterprise

    1872460670 = Enterprise Edition: ядро на основе лицензирования

    610778273 = Enterprise Evaluation

    284895786 = Business Intelligence

    -2117995310 = Developer

    -1592396055 = Express

    -133711905= Express with Advanced Services

    -1534726760 = Standard

    1293598313 = Web

    1674378470 = база данных SQL Database

    Базовый тип данных: bigint

    EngineEdition

    Выпуск компонента Компонент Database Engine для экземпляра SQL Server, установленного на сервере.

    1 = Personal или Desktop Engine (недоступен для SQL Server 2005 и более поздних версий).

    2 = Standard (возвращается для выпусков Standard, Web и Business Intelligence).

    3 = Enterprise (это значение возвращается для выпусков Evaluation Edition, Developer Edition и обоих вариантов Enterprise Edition).

    4 = Express (возвращается для выпусков Express, Express with Tools и Express with Advanced Services).

    5 = база данных SQL Database

    Базовый тип данных: int

    HadrManagerStatus

    Показывает, запущен ли диспетчер Группы доступности AlwaysOn.

    0 = не запущен, ожидает связи.

    1 = запущен и выполняется.

    2 = не запущен и завершился неудачно.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2014 включительно.

    InstanceName

    Имя экземпляра, к которому подключен пользователь.

    Возвращает значение NULL в случае, если имя экземпляра установлено по умолчанию, при возникновении ошибки и в случае, если входные данные оказываются недопустимы.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: nvarchar(128)

    IsClustered

    Экземпляр сервера настроен для работы в отказоустойчивом кластере.

    1 = в кластере.

    0 = не в кластере.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: int

    IsFullTextInstalled

    На текущем экземпляре SQL Server установлены компоненты полнотекстового и семантического индексирования.

    1 = компоненты полнотекстового и семантического индексирования установлены.

    0 = компоненты полнотекстового и семантического индексирования не установлены.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: int

    IsHadrEnabled

    Служба Группы доступности AlwaysOn включена на этом экземпляре сервера.

    0 = компонент Группы доступности AlwaysOn отключен.

    1 = компонент Группы доступности AlwaysOn включен.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: int

    Для реплик доступности, создаваемых и запускаемых на экземпляре SQL Server, на экземпляре сервера должна быть включена служба Группы доступности AlwaysOn. Дополнительные сведения см. в разделе Включение и отключение групп доступности AlwaysOn (SQL Server).

    Примечание

    Свойство IsHadrEnabled относится только к службе Группы доступности AlwaysOn.Другие возможности высокого уровня доступности или аварийного восстановления, такие как зеркальное отображение базы данных или доставка журналов, не затрагиваются этим свойством сервера.

    Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2014 включительно.

    IsIntegratedSecurityOnly

    Сервер запущен во встроенном режиме безопасности.

    1 = встроенная безопасность (проверка подлинности Windows)

    0 = без встроенного режима безопасности. (Как проверка подлинности Windows, так и проверки подлинности SQL Server.)

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: int

    IsLocalDB

    Сервер является экземпляром SQL Server Express LocalDB.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Применимо для следующих объектов: С SQL Server 2012 по SQL Server 2014 включительно.

    IsSingleUser

    Server запущен в однопользовательском режиме.

    1 = однопользовательский режим.

    0 = не однопользовательский режим.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: int

    IsXTPSupported

    Сервер поддерживает компонент In-Memory OLTP.

    1 = сервер поддерживает компонент In-Memory OLTP.

    0= сервер не поддерживает компонент In-Memory OLTP.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: int

    Применимо для следующих объектов: С SQL Server 2014 по SQL Server 2014 включительно.

    LCID

    Код локали Windows для параметров сортировки.

    Базовый тип данных: int

    LicenseType

    Не используется. В продукте SQL Server не сохраняются сведения о лицензии. Всегда возвращает DISABLED.

    Базовый тип данных: nvarchar(128)

    MachineName

    Имя компьютера Windows, на котором запущен экземпляр сервера.

    Для кластеризованного экземпляра SQL Server, работающего на виртуальном сервере службы кластеров (Майкрософт), возвращается имя виртуального сервера.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: nvarchar(128)

    NumLicenses

    Не используется. В продукте SQL Server не сохраняются сведения о лицензии. Всегда возвращает значение NULL.

    Базовый тип данных: int

    ProcessID

    Идентификатор процесса службы SQL Server. Свойство ProcessID позволяет определить, какой из файлов Sqlservr.exe принадлежит данному экземпляру.

    NULL = недопустимый ввод, ошибка или неприменимо.

    Базовый тип данных: int

    ProductVersion

    Версия экземпляра SQL Server в виде major.minor.build.revision.

    Базовый тип данных: nvarchar(128)

    ProductLevel

    Уровень версии экземпляра SQL Server.

    Возвращает одно из следующих значений.

    'RTM' = Исходная выпущенная версия

    «SPn» = версия пакета обновления

    'CTP', = CTP-версия

    Базовый тип данных: nvarchar(128)

    ResourceLastUpdateDateTime

    Отображаются дата и время последнего изменения базы данных Resource.

    Базовый тип данных: datetime

    ResourceVersion

    Возвращает версию базы данных Resource.

    Базовый тип данных: nvarchar(128)

    ServerName

    Сведения об экземпляре и сервере Windows, связанные с определенным экземпляром SQL Server.

    NULL = недопустимый ввод или произошла ошибка.

    Базовый тип данных: nvarchar(128)

    SqlCharSet

    Идентификатор кодировки SQL из идентификатора параметров сортировки.

    Базовый тип данных: tinyint

    SqlCharSetName

    Имя кодировки SQL из параметров сортировки.

    Базовый тип данных: nvarchar(128)

    SqlSortOrder

    Идентификатор порядка сортировки SQL из параметров сортировки

    Базовый тип данных: tinyint

    SqlSortOrderName

    Имя порядка сортировки SQL из параметров сортировки

    Базовый тип данных: nvarchar(128)

    FilestreamShareName

    Имя общего ресурса, используемое FILESTREAM.

    NULL = недопустимый ввод, ошибка или неприменимо.

    FilestreamConfiguredLevel

    Настроенный уровень доступа FILESTREAM. Дополнительные сведения см. в разделе Уровень доступа к файловому потоку.

    FilestreamEffectiveLevel

    Действующий уровень доступа FILESTREAM. Это значение может отличаться от значения FilestreamConfiguredLevel, если уровень был изменен и ожидается перезапуск экземпляра или перезагрузка компьютера. Дополнительные сведения см. в разделе filestream access level.

Типы возвращаемых данных

sql_variant

Замечания

Свойство ServerName

Свойство ServerName функции SERVERPROPERTY, а также функция @@SERVERNAME возвращают аналогичные сведения. В свойстве ServerName задаются имена экземпляра и сервера Windows, которые вместе образуют уникальный экземпляр сервера. Функция @@SERVERNAME возвращает текущее имя локального сервера.

Свойство ServerName и функция @@SERVERNAME возвращают одинаковые сведения, если установленное по умолчанию имя сервера не было изменено во время установки. Имя локального сервера можно настроить, выполнив следующие команды:

EXEC sp_dropserver 'current_server_name';
GO
EXEC sp_addserver 'new_server_name', 'local';
GO

Если имя локального сервера было изменено во время установки и отличается от заданного по умолчанию, то функция @@SERVERNAME будет возвращать новое имя.

Свойства версии

Функция SERVERPROPERTY возвращает отдельные свойства, которые относятся к сведениям о версии, а функция @@VERSION объединяет выходные данные в одну строку. Если для приложения требуются отдельные строки свойств, можно использовать функцию SERVERPROPERTY, которая возвращает эти строки, а не заниматься синтаксическим анализом результатов функции @@VERSION.

Примеры

В следующем примере используется функция SERVERPROPERTY в инструкции SELECT для возвращения сведений о текущем сервере. Этот сценарий полезен, когда на сервер Windows установлено несколько экземпляров SQL Server и клиенту приходится открывать другое соединение с тем же экземпляром, использующим текущее соединение.

SELECT CONVERT(sysname, SERVERPROPERTY('servername'));
GO

В следующем примере используется функция SERVERPROPERTY в инструкции SELECT, чтобы получить информацию о версии продукта.

SELECT
SERVERPROPERTY('ProductVersion') AS ProductVersion,
SERVERPROPERTY('ProductLevel') AS ProductLevel,
SERVERPROPERTY('Edition') AS Edition,
SERVERPROPERTY('EngineEdition') AS EngineEdition;
GO

См. также

Справочник

Выпуски и компоненты SQL Server 2014