SERVERPROPERTY (Transact-SQL)
返回 SQL Server 2008 R2 中有关服务器实例的属性信息。
语法
SERVERPROPERTY ( propertyname )
参数
propertyname
一个表达式,包含要返回的服务器属性信息。propertyname 可以是下列值之一:属性
返回值
BuildClrVersion
在生成 SQL Server 实例时使用的 Microsoft .NET Framework 公共语言运行时 (CLR) 的版本。
基本数据类型:nvarchar(128)
Collation
服务器的默认排序规则名称。
NULL = 输入无效或错误。
基本数据类型:nvarchar(128)
CollationID
SQL Server 排序规则的 ID。
基本数据类型:int
ComparisonStyle
排序规则的 Windows 比较样式。
基本数据类型:int
ComputerNamePhysicalNetBIOS
当前运行 SQL Server 实例的本地计算机的 NetBIOS 名称。
对于故障转移群集上的 SQL Server 群集实例,当 SQL Server 实例故障转移到故障转移群集中的其他节点时,该值将更改。
在 SQL Server 的独立实例上,此值保持不变,并返回与 MachineName 属性相同的值。
注意如果 SQL Server 实例位于故障转移群集中,并且您要获取故障转移群集实例的名称,请使用 MachineName 属性。NULL = 输入无效或错误。
基本数据类型:nvarchar(128)
Edition
所安装的 SQL Server 实例的产品版本。使用该属性的值确定已安装的产品支持的功能和限制(如最大 CPU 数)。64 位版本的数据库引擎向此版本追加(64 位)。
返回:
“Data Center Edition”
“Desktop Engine”(不适用于 SQL Server 2005 和更高版本。)
“Developer Edition”
“Enterprise Edition”
“Enterprise Evaluation Edition”
“Express Edition”
“Express Edition with Advanced Services”
“Personal Edition”(不适用于 SQL Server 2005 和更高版本。)
“Small Business Server Edition”
“Standard Edition”
“Web Edition”
“Windows Embedded SQL”
“Workgroup Edition”
基本数据类型:nvarchar(128)
EditionID
标识号,表示已安装的 SQL Server 实例的产品版本。使用该属性的值可以确定已安装的产品所支持的功能和限制(如最大 CPU 数)。
-978676123 = Data Center
-1253826760 = Desktop
-2117995310 = Developer
-1592396055 = Express
1804890536 = Enterprise
610778273 = Enterprise Evaluation
-133711905 = Express with Advanced Services
-323382091 = Personal
-1960233010 = Small Business Server
-1534726760 = Standard
1293598313 = Web
-3250176541 = Windows Embedded SQL
1333529388 = Workgroup
基本数据类型:bigint
EngineEdition
服务器上安装的 SQL Server 实例的数据库引擎版本。
1 = Personal 或 Desktop Engine(不适用于 SQL Server 2005 和更高版本。)
2 = Standard(对 Standard、Small Business Server、Web 和 Workgroup 返回该值。)
3 = Enterprise(对 Enterprise、Enterprise Evaluation、Data Center 和 Developer 返回该值。)
4 = Express(对 Express、Express with Advanced Services 和 Windows Embedded SQL 返回该值。)
5 = SQL Azure
基本数据类型:int
InstanceName
用户连接到的实例的名称。
如果实例名称是默认实例,或者输入无效或发生错误,则返回 NULL。
基本数据类型:nvarchar(128)
IsClustered
在故障转移群集中配置服务器实例。
1 = 群集。
0 = 非群集。
NULL = 输入无效或错误。
基本数据类型:int
IsFullTextInstalled
在 SQL Server 的当前实例中安装全文组件。
1 = 已安装全文组件。
0 = 未安装全文组件。
NULL = 输入无效或错误。
基本数据类型:int
IsIntegratedSecurityOnly
服务器处于集成安全性模式下。
1 = 集成安全性。
0 = 非集成安全性。
NULL = 输入无效或错误。
基本数据类型:int
IsSingleUser
服务器处于单用户模式下。
1 = 单个用户。
0 = 非单个用户
NULL = 输入无效或错误。
基本数据类型:int
LCID
排序规则的 Windows 区域设置标识符 (LCID)。
基本数据类型:int
LicenseType
未使用。SQL Server 产品不保留或维护许可证信息。始终返回 DISABLED。
基本数据类型:nvarchar(128)
MachineName
运行服务器实例的 Windows 计算机名称。
对于群集实例,即在 Microsoft 群集服务的虚拟服务器上运行的 SQL Server 实例,返回虚拟服务器的名称。
NULL = 输入无效或错误。
基本数据类型:nvarchar(128)
NumLicenses
未使用。SQL Server 产品不保留或维护许可证信息。始终返回 NULL。
基本数据类型:int
ProcessID
SQL Server 服务的进程 ID。ProcessID 对于标识属于该实例的 Sqlservr.exe 很有用。
NULL = 输入无效或出现错误。
基本数据类型:int
ProductVersion
SQL Server 实例的版本,格式为“major.minor.build”。
基本数据类型:nvarchar(128)
ProductLevel
SQL Server 实例的版本级别。
返回下列项之一:
“RTM”= 原始发布版本
“SPn”= Service pack 版本
“CTP”= Community Technology Preview 版本
基本数据类型:nvarchar(128)
ResourceLastUpdateDateTime
返回资源数据库上次更新的日期和时间。
基本数据类型:datetime
ResourceVersion
返回版本资源数据库。
基本数据类型:nvarchar(128)
ServerName
Windows 服务器和与指定的 SQL Server 实例关联的实例信息。
NULL = 输入无效或错误。
基本数据类型:nvarchar(128)
SqlCharSet
排序规则 ID 中的 SQL 字符集 ID。
基本数据类型:tinyint
SqlCharSetName
排序规则中的 SQL 字符集名称。
基本数据类型:nvarchar(128)
SqlSortOrder
排序规则中的 SQL 排序顺序 ID
基本数据类型:tinyint
SqlSortOrderName
排序规则中的 SQL 排序顺序名称。
基本数据类型:nvarchar(128)
FilestreamShareName
FILESTREAM 使用的共享的名称。
FilestreamConfiguredLevel
FILESTREAM 访问的配置级别。有关详细信息,请参阅 文件流访问级别选项。
FilestreamEffectiveLevel
FILESTREAM 访问的有效级别。如果级别已更改,并且实例重新启动或计算机重新启动处于挂起状态,则该值可以不同于 FilestreamConfiguredLevel。有关详细信息,请参阅 文件流访问级别选项。
返回类型
sql_variant
注释
ServerName 属性
SERVERPROPERTY 函数的 ServerName 属性与 @@SERVERNAME 返回相似的信息。ServerName 属性提供 Windows 服务器和实例名称,两者共同构成唯一的服务器实例。@@SERVERNAME 提供当前配置的本地服务器名称。
如果安装时未更改默认服务器名称,则 ServerName 属性和 @@SERVERNAME 返回相同的信息。可以通过执行以下过程配置本地服务器的名称:
EXEC sp_dropserver 'current_server_name';
GO
EXEC sp_addserver 'new_server_name', 'local';
GO
如果本地服务器名称已更改为与安装时的默认服务器名称不同的名称,则 @@SERVERNAME 将返回此新名称。
版本属性
示例
下面的示例在 SELECT 语句中使用 SERVERPROPERTY 函数返回有关当前服务器的信息。如果 Windows 服务器安装了多个 SQL Server 实例,而且客户端必须打开另一个到当前连接所使用的同一实例连接,则此方案很有用。
SELECT CONVERT(sysname, SERVERPROPERTY('servername'));
GO
以下示例在 SELECT 语句中使用 SERVERPROPERTY 函数返回有关产品的版本信息。
SELECT
SERVERPROPERTY('ProductVersion') AS ProductVersion,
SERVERPROPERTY('ProductLevel') AS ProductLevel,
SERVERPROPERTY('Edition') AS Edition,
SERVERPROPERTY('EngineEdition') AS EngineEdition;
GO