本文件已封存並已停止維護。

SERVERPROPERTY (Transact-SQL)

更新: 2006 年 4 月 14 日

傳回伺服器執行個體的屬性資訊。

ms174396.note(zh-tw,SQL.90).gif重要事項:
與舊版 Microsoft SQL Server 相較,此功能已有所更動。如需詳細資訊,請參閱<SQL Server 2005 中對於 Database Engine 功能的行為變更>。

主題連結圖示 Transact-SQL 語法慣例


SERVERPROPERTY ( propertyname )

propertyname

這是一個運算式,其中包含將傳回的伺服器屬性資訊。propertyname 可以是下列值之一。

屬性名稱 傳回的值

BuildClrVersion

建立 SQL Server 2005 執行個體時所用的 Microsoft .NET Framework Common Language Runtime (CLR) 版本。

基底資料類型:nvarchar(128)。

Collation

伺服器預設定序的名稱。

NULL = 輸入無效,或發生錯誤。

基底資料類型:nvarchar(128)

CollationID

SQL Server 定序的識別碼。

基底資料類型:int

ComparisonStyle

Windows 的定序比較樣式。

基底資料類型: int

ComputerNamePhysicalNetBIOS

SQL Server 執行個體目前在執行之本機電腦的 NetBIOS 名稱。

如果是容錯移轉叢集中的 SQL Server 叢集執行個體,當 SQL Server 執行個體容錯移轉到容錯移轉叢集中的其他節點時,這個值會跟著改變。

在 SQL Server 的獨立式執行個體中,這個值會維持不變,且會傳回與 MachineName 屬性相同的值。

如果 SQL Server 執行個體在容錯移轉叢集中,且您想要取得叢集虛擬伺服器名稱,請使用 MachineName 屬性。
ms174396.note(zh-tw,SQL.90).gif附註:

NULL = 輸入無效,或發生錯誤。

基底資料類型:nvarchar(128)

Edition

已安裝的 SQL Server 執行個體產品版本。請利用這個屬性值來判斷已安裝的產品所支援的功能和限制 (如最大 CPU 數目)。

傳回:

'Desktop Engine' (不適用於 SQL Server 2005。)

'Developer Edition'

'Enterprise Edition'

'Enterprise Evaluation Edition'

'Personal Edition'(不適用於 SQL Server 2005。)

'Standard Edition'

'Express Edition'

'Express Edition with Advanced Services'

'Workgroup Edition'

'Windows Embedded SQL'

基底資料類型:nvarchar(128)

EditionID

是代表已安裝的 SQL Server 執行個體產品版本的識別碼。請利用這個屬性值來判斷功能和限制 (如已安裝的產品所支援的最大 CPU 數目)。

-1253826760 = Desktop Edition

-1592396055 = Express Edition

-1534726760 = Standard Edition

1333529388 = Workgroup Edition

1804890536 = Enterprise Edition

-323382091 = Personal Edition

-2117995310 = Developer Edition

610778273 = Enterprise Evaluation Edition

1044790755 = Windows Embedded SQL

4161255391 = Express Edition with Advanced Services

如需詳細資訊,請參閱<SQL Server 2005 版本支援的功能>。

基底資料類型:int

EngineEdition

伺服器中所安裝的 SQL Server 執行個體的 Database Engine 版本。

1 = Personal 或 Desktop Engine (不適用於 SQL Server 2005。)

2 = Standard (Standard 和 Workgroup 會傳回這個值。)

3 = Enterprise (Enterprise、Enterprise Evaluation 和 Developer 都會傳回這個項目。)

4 = Express (Express、Express Edition with Advanced Services 和 Windows Embedded SQL 都會傳回這個值。)

基底資料類型: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 執行個體的模式。

PER_SEAT = 每一基座模式

PER_PROCESSOR = 每一處理器模式

DISABLED = 停用授權。

基底資料類型:nvarchar(128)

MachineName

執行伺服器執行個體的 Windows 電腦名稱。

如果是叢集執行個體,也就是在 Microsoft Cluster Service 虛擬伺服器上執行的 SQL Server 執行個體,便會傳回虛擬伺服器名稱。

NULL = 輸入無效,或發生錯誤。

基底資料類型:nvarchar(128)

NumLicenses

如果在每一基座模式中,便是這個 SQL Server 執行個體所登錄的用戶端授權數目。

如果在每一處理器模式中,便是這個 SQL Server 執行個體所登錄的處理器數目。

當伺服器不是其中一個項目時,便會傳回 NULL。

基底資料類型:int

ProcessID

SQL Server 服務的處理序識別碼。在識別哪個 Sqlservr.exe 屬於這個執行個體時,ProcessID 非常有用。

NULL = 輸入無效,或發生錯誤。

基底資料類型:int

ProductVersion

SQL Server 執行個體的版本,格式為 'major.minor.build'。

基底資料類型:nvarchar(128)

ProductLevel

SQL Server 執行個體的版本層級。

傳回下列項目之一:

'RTM' = 原始發行版本

'SPn' = Service Pack 版本

'Bn', = Beta 版本

基底資料類型:nvarchar(128)。

ResourceLastUpdateDateTime

傳回資源資料庫上次更新的日期和時間。

基底資料類型: datetime。

ResourceVersion

傳回版本資源資料庫。

基底資料類型:nvarchar(128)

ServerName

指定的 SQL Server 執行個體所關聯的 Windows 伺服器和執行個體資訊。

NULL = 輸入無效,或發生錯誤。

基底資料類型:nvarchar(128)

SqlCharSet

定序識別碼中的 SQL 字元集識別碼。

基底資料類型: tinyint

SqlCharSetName

定序中的 SQL 字元集名稱。

基底資料類型:nvarchar(128)

SqlSortOrder

定序中的 SQL 排序順序識別碼

基底資料類型: tinyint.

SqlSortOrderName

定序中的 SQL 排序順序名稱。

基底資料類型: nvarchar(128)。

sql_variant

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(char(20), SERVERPROPERTY('servername'));
GO

版本 歷程記錄

2006 年 4 月 14 日

新增內容:
  • 新增 EditionID 屬性。
  • 將 Express Edition with Advanced Services 值新增至 Edition、EngineID 和 EngineEdition。
變更的內容:
  • 指出 Personal 和 Desktop 版本限制為舊版的 SQL Server。
  • 為 Workgroup Edition 和 Windows Embedded SQL Edition 插入 EngineEdition 對應。
顯示: