次の方法で共有


SERVERPROPERTY (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric の SQL 分析エンドポイントMicrosoft Fabric のウェアハウスMicrosoft Fabric プレビューの SQL データベース

サーバー インスタンスについてのプロパティ情報を返します。

Transact-SQL 構文表記規則

Note

Microsoft Entra ID の、旧称は Azure Active Directory(Azure AD)です。

Syntax

SERVERPROPERTY ( 'propertyname' )

Important

SQL Server と Azure SQL Database と Microsoft Fabric のデータベース エンジンのバージョン番号は互いに比較できません。また、これらの個別の製品の内部ビルド番号を表します。 Azure SQL データベース の データベース エンジン は、SQL Server データベース エンジン と同じコード ベースに基づいています。 最も重要なのは、Azure SQL データベース の データベース エンジン には常に最新の SQL データベース エンジン ビットがあることです。 たとえば、Azure SQL Database のバージョン 12 は SQL Server のバージョン 16 より新しくなっています。

Arguments

propertyname

サーバーについて返されるプロパティ情報を含む式。 propertyname には、次のいずれかの値を指定できます。 そのバージョンのデータベース エンジンで無効またはサポートされていない プロパティ名 を使用すると、 NULLが返されます。

Property 返される値
BuildClrVersion SQL Server のインスタンスのビルド時に使われた Microsoft .NET Framework 共通言語ランタイム (CLR) のバージョン。

NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: 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 インスタンスのインストールされている製品のエディション。 機能や制限 (SQL Server のエディション別の計算容量制限など) は、このプロパティの値を使用して調べます。 このバージョン (64 ビット) には、64 ビット バージョンのデータベース エンジンが追加されています。

使用可能な値を識別するには、次の Edition テーブル を使用します。

基本データ型: nvarchar(128)
EditionID インストールされている SQL Server インスタンスの製品エディションの ID を表します。 機能や制限 (SQL Server のエディション別の計算容量制限など) は、このプロパティの値を使用して調べます。

使用可能な値を識別するには、次の Edition テーブル を使用します。

基本データ型: bigint
EngineEdition サーバーにインストールされている データベース エンジン インスタンスのSQL Serverのエディション。

1 = Personal または Desktop Engine (SQL Server 2005 (9.x) 以降のバージョンでは使用できません)
2 = Standard (Standard、Standard Developer、Web、Business Intelligence の場合)。
3 = Enterprise (Enterprise、Enterprise Developer、Developer、Evaluation の各エディション)。
4 = Express (Express、Express with Tools、Express with Advanced Services の場合)
5 = SQL Database
6 = Azure Synapse Analytics
8 = Azure SQL Managed Instance
9 = Azure SQL Edge (Azure SQL Edge のすべてのエディションの場合)
11 = Azure Synapse サーバーレス SQL プール、または Microsoft Fabric
12 = Microsoft Fabric プレビューの Microsoft Fabric SQL データベース。

基本データ型: int
FilestreamConfiguredLevel FILESTREAM アクセスの構成されているレベル。 詳細については、「filestream のアクセス レベル」を参照してください。

0 = FILESTREAM が無効です
1 = Transact-SQL アクセスに対して FILESTREAM が有効になっています
2 = Transact-SQL およびローカルの Win32 ストリーミング アクセスに対して FILESTREAM が有効になっています
3 = FILESTREAM は、Transact-SQL と、ローカルとリモートの両方の Win32 ストリーミング アクセスに対して有効です。

基本データ型: int
FilestreamEffectiveLevel FILESTREAM アクセスの有効なレベル。 レベルが変更されており、インスタンスの再起動またはコンピューターの再起動のいずれかが保留されている場合、この値は FilestreamConfiguredLevel と異なることがあります。 詳細については、「filestream のアクセス レベル」を参照してください。

0 = FILESTREAM が無効です
1 = Transact-SQL アクセスに対して FILESTREAM が有効になっています
2 = Transact-SQL およびローカルの Win32 ストリーミング アクセスに対して FILESTREAM が有効になっています
3 = FILESTREAM は、Transact-SQL と、ローカルとリモートの両方の Win32 ストリーミング アクセスに対して有効です。

基本データ型: int
FilestreamShareName FILESTREAM で使用される共有の名前。

NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: nvarchar(128)
HadrManagerStatus Always On 可用性グループ マネージャーが開始されたかどうかを示します。

0 = 未開始状態、通信保留中
1 = 開始されて実行中
2 = 未開始状態、失敗
NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: int
InstanceDefaultBackupPath インスタンス バックアップ ファイルの既定のパスの名前。

適用対象: SQL Server 2019 (15.x) 以降のバージョン。

基本データ型: nvarchar(128)
InstanceDefaultDataPath インスタンス データ ファイルの既定のパスの名前。

適用対象: SQL Server。

基本データ型: nvarchar(128)
InstanceDefaultLogPath インスタンス ログ ファイルの既定のパスの名前。

適用対象: SQL Server。

基本データ型: nvarchar(128)
InstanceName ユーザーの接続先のインスタンス名。

インスタンス名が既定のインスタンスの場合、入力が有効でない場合、またはエラーである場合は、 NULL を返します。

NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: nvarchar(128)
IsAdvancedAnalyticsInstalled セットアップ時に Advanced Analytics 機能がインストールされた場合は 1 を返します。Advanced Analytics がインストールされていない場合は 0 を返します。

基本データ型: int
IsBigDataCluster SQL Server 2019 (15.x) の CU 4 から導入されました。

インスタンスが SQL Server ビッグ データ クラスターの場合は 1 を返し、ビッグ データ クラスターではない場合は 0 を返します。

基本データ型: int
IsClustered サーバー インスタンスがフェールオーバー クラスターで構成されます。

1 = クラスター化
0 = 非クラスター化
NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: int
IsExternalAuthenticationOnly Microsoft Entra 専用認証が有効かどうかを返します。

1 = Microsoft Entra 専用認証を有効にする。
0 = Microsoft Entra 専用認証を無効にする。

適用対象: Azure SQL Database と Azure SQL Managed Instance。

基本データ型: int
IsExternalGovernanceEnabled Microsoft Purview アクセス ポリシーを有効にするかどうかを返します。

1 = 外部ガバナンスが有効になっています。
0 = 外部ガバナンスが無効になっています。

適用対象: SQL Server 2022 (16.x) 以降のバージョン。

基本データ型: int
IsFullTextInstalled SQL Server の現在のインスタンスに、フルテキスト インデックス作成およびセマンティック インデックス作成のコンポーネントがインストールされています。

1 = フルテキスト インデックス作成およびセマンティック インデックス作成のコンポーネントがインストールされています。
0 = フルテキスト インデックス作成およびセマンティック インデックス作成のコンポーネントがインストールされていません。
NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: int
IsHadrEnabled Always On 可用性グループは、このサーバー インスタンス上で有効です。

0 = Always On 可用性グループ機能は無効です。
1 = Always On 可用性グループ機能は有効です。
NULL = 入力が無効であるか、エラーであるか、該当しません。

SQL Server のインスタンスで可用性レプリカを作成して実行するには、サーバー インスタンス上で Always On 可用性グループが有効になっている必要があります。 詳細については、「 Always On 可用性グループ機能を有効または無効にする」を参照してください。

手記:IsHadrEnabled プロパティは、Always On 可用性グループにのみ関連します。 データベース ミラーリングやログ配布などの、その他の高可用性機能およびディザスター リカバリー機能は、このサーバー プロパティの影響を受けません。

適用対象: SQL Server。

基本データ型: int
IsIntegratedSecurityOnly サーバーは統合セキュリティ モードです。

1 = 統合セキュリティ (Windows 認証)
0 = 非統合セキュリティ (Windows 認証と SQL Server 認証の両方)。
NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: int
IsLocalDB サーバーは SQL Server Express LocalDB のインスタンスです。

NULL = 入力が無効であるか、エラーであるか、該当しません。

適用対象: SQL Server。

基本データ型: int
IsPolyBaseInstalled サーバー インスタンスに PolyBase 機能がインストールされているかどうかを返します。

0 = PolyBase はインストールされていません。
1 = Polybase はインストールされています。

適用対象: SQL Server 2016 (13.x) 以降のバージョン。

基本データ型: int
IsServerSuspendedForSnapshotBackup サーバーは中断モードであり、サーバー レベルの解放が必要です。

1 = 中断。
0 = 中断されていません。

基本データ型: int
IsSingleUser サーバーはシングル ユーザー モードです。

1 = シングル ユーザー
0 = 非シングル ユーザー
NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: int
IsTempDbMetadataMemoryOptimized メタデータに対してメモリ最適化テーブルを使用するように tempdb が有効になっている場合は、1 を返します。メタデータに対して通常のディスク ベースのテーブルが tempdb によって使用されている場合は 0 になります。 詳細については、「 tempdb Database」をご覧ください。

適用対象: SQL Server 2019 (15.x) 以降のバージョン。

基本データ型: int
IsXTPSupported サーバーは、インメモリ OLTP をサポートします。

1 = サーバーはインメモリ OLTP をサポートします。
0 = サーバーはインメモリ OLTP をサポートしません。
NULL = 入力が無効であるか、エラーであるか、該当しません。

適用対象: SQL Server 2014 (12.x) 以降のバージョン、および Azure SQL Database。

基本データ型: int
LCID 照合順序の Windows ロケール識別子 (LCID)。

基本データ型: int
LicenseType Unused. ライセンス情報は SQL Server 製品によって保存または維持されていません。 常に DISABLED が返されます。

基本データ型: nvarchar(128)
MachineName サーバー インスタンスが稼働している Windows コンピューターの名前。

クラスター化インスタンスの場合、つまり、Microsoft Cluster Service 上の仮想サーバーで稼働している SQL Server のインスタンスの場合は、仮想サーバーの名前が返されます。

NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: nvarchar(128)
NumLicenses Unused. ライセンス情報は SQL Server 製品によって保存または維持されていません。 常に NULL を返します。

基本データ型: int
PathSeparator Windows では \ を、Linux では / を返します

適用対象: SQL Server 2017 (14.x) 以降のバージョン。

基本データ型: nvarchar
ProcessID SQL Server サービスのプロセス ID。 このインスタンスに属する Sqlservr.exe を識別するときに、ProcessID は効果的です。

NULL = 入力が無効であるか、エラーであるか、該当しません。

基本データ型: int
ProductBuild ビルド番号です。

適用対象: SQL Server 2014 (12.x) 以降のバージョン。

基本データ型: nvarchar(128)
ProductBuildType 現在のビルドのビルドの種類です。

次の値のいずれか。

OD = 特定の顧客のオンデマンド リリース。
GDR = Windows Update を介してリリースされた一般配布リリース。
NULL = 適用されません。

適用対象: SQL Server。

基本データ型: nvarchar(128)
ProductLevel SQL Server インスタンスのバージョンのレベルです。

次の値のいずれか。

'RTM' = オリジナル リリース バージョン
'SPn' = サービス パックのバージョン
'CTPn', = Community Technology Preview バージョン。

基本データ型: nvarchar(128)
ProductMajorVersion メジャー バージョン。

適用対象: SQL Server。

基本データ型: nvarchar(128)
ProductMinorVersion マイナー バージョン。

適用対象: SQL Server。

基本データ型: nvarchar(128)
ProductUpdateLevel 現在のビルドのレベルを更新します。 CU は累積更新を示します。

次の値のいずれか。

CUn = 累積更新プログラム
NULL = 適用されません。

適用対象: SQL Server と Azure SQL Managed Instance。

基本データ型: nvarchar(128)
ProductUpdateReference そのリリースのサポート技術情報の記事です。

適用対象: SQL Server。

基本データ型: nvarchar(128)
ProductUpdateType インスタンスが従う更新の周期。 Azure SQL Managed Instance の更新ポリシーに対応します。

次の値のいずれか。

CU = 更新は、対応する主要な SQL Server リリース (SQL Server 2022 更新ポリシー) の累積更新プログラム (CU) を使用して展開されます。

継続的 = 新しい機能は、SQL Server リリース周期 (Always-up-to-date 更新ポリシー) に関係なく、使用可能になるとすぐに Azure SQL Managed Instance に提供されます。

適用対象: Azure SQL Managed Instance。

基本データ型: nvarchar(128)
ProductVersion SQL Server のインスタンスのバージョン (major.minor.build.revision 形式)。

基本データ型: nvarchar(128)
ResourceLastUpdateDateTime リソース データベースが最後に更新された日時を返します。

基本データ型: datetime
ResourceVersion リソース データベースのバージョンを返します。

基本データ型: nvarchar(128)
ServerName Windows サーバーと、指定したインスタンスに関連付けられているインスタンス情報の両方。

NULL = 入力が無効であるか、エラーです。

基本データ型: nvarchar(128)
SqlCharSet 照合順序 ID の SQL 文字セット ID。

基本データ型: tinyint
SqlCharSetName 照合順序の SQL 文字セットの名前。

基本データ型: nvarchar(128)
SqlSortOrder 照合順序からの SQL 並べ替え順序 ID。

基本データ型: tinyint
SqlSortOrderName 照合順序の SQL 並べ替え順序の名前。

基本データ型: nvarchar(128)
SuspendedDatabaseCount サーバー上で中断されているデータベースの数。

基本データ型: int

次の表に、 EditionIDEditionに使用できる値を示します。

EditionID Edition
1804890536 Enterprise
1872460670 Enterprise Edition: コア ベースのライセンス
610778273 エンタープライズ評価
284895786 ビジネス インテリジェンス
-2117995310 Developer 1 または Developer Enterprise 2
-2509700633 Developer Standard 2
-1592396055 簡易
-133711905 高度なサービスを使用した Express
-1534726760 Standard
1293598313 Web
1674378470 SQL Database または Azure Synapse Analytics
-1461570097 Azure SQL Edge Developer 3
1994083197 Azure SQL Edge 4

1適用対象: SQL Server 2022 (16.x) 以前のバージョン。
2適用対象: SQL Server 2025 (17.x) プレビュー以降のバージョン。
3 Azure SQL Edge の開発専用エディションを示します。
4 Azure SQL Edge の有料エディションを示します。

戻り値の型

sql_variant

Remarks

ServerName プロパティ

ServerName 関数の SERVERPROPERTY プロパティと @@SERVERNAME は、同様の情報を返します。 ServerName プロパティが返す Windows サーバーとインスタンス名を合わせることで、一意なサーバー インスタンスが形成されます。 @@SERVERNAME は、現在構成されているローカル サーバー名を返します。

インストール時の既定のサーバー名から変更されていない場合、ServerName プロパティと @@SERVERNAME は、同じ情報を返します。 ローカル サーバー名は次のストアド プロシージャを実行することによって構成できます。

EXECUTE sp_dropserver 'current_server_name';
GO

EXECUTE sp_addserver 'new_server_name', 'local';
GO

ローカル サーバー名がインストール時の既定のサーバー名から変更されている場合、@@SERVERNAME は新しい名前を返します。

ServerName 関数の SERVERPROPERTY プロパティは、保存時の Windows サーバー名を返します。 以前のメジャー バージョンでは、大文字が返されました。 この動作変更は、SQL Server 2019 (15.x) CU 9 から CU 12 までは大文字に戻されていましたが、SQL Server 2019 (15.x) CU 13 以降ではサーバー名が保存された状態のまま返されます。

Windows サーバー名に小文字が含まれている場合、この動作の変更により、ServerName関数の SERVERPROPERTY プロパティと、サーバーの名前の変更がない場合でも、@@SERVERNAME (大文字と小文字) が異なる可能性があります。

サーバーの名前が server01、SQL Server インスタンスの名前が INST1 であるとします。 次の表は、SQL Server 2019 (15.x) の異なるビルド間での動作の違いをまとめたものです。

SQL Server 2019 (15.x) リリース SERVERPROPERTY('ServerName') 追加情報
RTM SERVER01\INST1 ServerName プロパティを大文字で返します
CU 1 – CU 8 server01\INST1 大文字に変更せずに、ServerName プロパティをそのまま返します
CU 9 – CU 12 SERVER01\INST1 ServerName プロパティを大文字で返します
CU 13 以降のバージョン server01\INST1 大文字に変更せずに、ServerName プロパティをそのまま返します

バージョンのプロパティ

SERVERPROPERTY 関数は、バージョン情報に関連する個別のプロパティを返します。一方で、@@VERSION 関数は、出力を 1 つの文字列に結合します。 アプリケーションで個別のプロパティ文字列が必要な場合は、SERVERPROPERTY の結果を解析する代わりに、 関数を使用すると、そのような個別のプロパティ文字列を返すことができます。

Permissions

すべてのユーザーは、サーバーのプロパティをクエリできます。

Examples

次の例では、SERVERPROPERTY ステートメント内で SELECT 関数を使用することによって、SQL Server の現在のインスタンスに関する情報を返します。

SELECT SERVERPROPERTY('MachineName') AS ComputerName,
       SERVERPROPERTY('ServerName') AS InstanceName,
       SERVERPROPERTY('Edition') AS Edition,
       SERVERPROPERTY('ProductVersion') AS ProductVersion,
       SERVERPROPERTY('ProductLevel') AS ProductLevel;
GO

Windows の SQL Server の各エディションでサポートされる機能の一覧については、以下を参照してください。