.NET Framework を使用して SQL Server のサービスパックを確認する方法

2024-04-06

SQL Server にインストールされているサービスパックを確認するには、いくつかの方法があります。

方法

  1. SQL Server Management Studio (SSMS) を使用する

    SSMS は、SQL Server を管理するためのツールです。 SSMS を使用してサービスパックを確認するには、以下の手順に従います。

    1. SSMS を起動します。
    2. オブジェクト エクスプローラーで、サーバー名を右クリックし、プロパティ を選択します。
    3. 詳細設定 タブをクリックします。 サービスパックのレベル に表示されている数字が、インストールされているサービスパックのバージョンです。
  2. Transact-SQL (T-SQL) クエリを使用する

    以下の T-SQL クエリを実行して、サービスパックのバージョンを確認できます。

SELECT @@VERSION;
出力結果の **Product Level** に、インストールされているサービスパックのバージョンが表示されます。
  1. Windows コマンド プロンプトを使用する

wmic product get name,version,vendor where name like 'Microsoft SQL Server%'
出力結果の **Version** 列に、インストールされているサービスパックのバージョンが表示されます。
  1. システム情報を使用する

    1. スタート メニューを開き、ファイル名を指定して実行 を選択します。
    2. ファイル名を指定して実行 ダイアログ ボックスで msinfo32 と入力し、OK をクリックします。
    3. システム サマリー ページで、ソフトウェア環境 セクションの SQL Server のバージョン を確認します。

補足

  • 上記の方法以外にも、レジストリ エディタを使用してサービスパックを確認することもできますが、誤操作をするとシステムに問題が発生する可能性があるため、上級者向けの方法となります。
  • サービスパックは、SQL Server に新しい機能を追加したり、バグを修正したりするためにリリースされます。 最新のサービスパックを適用しておくことをお勧めします。
  • 上記の情報は参考用です。 詳細については、Microsoft のドキュメントを参照してください。



SELECT @@VERSION;

出力例

Microsoft SQL Server 2019 (RTM-GDR) (KB5007444) - 15.0.2070.20 (X64)
Copyright (C) 2019 Microsoft Corporation. Express Edition (64-bit) on Windows 10 Pro 10.0 <X64> (Build 19044)
wmic product get name,version,vendor where name like 'Microsoft SQL Server%'
名前                               バージョン                               ベンダー
-------------------------------------- ----------------------------------- --------
Microsoft SQL Server 2019 (RTM-GDR)   15.0.2070.20                          Microsoft Corporation

システム情報

SQL Server のバージョン: Microsoft SQL Server 2019 (RTM-GDR) (KB5007444) - 15.0.2070.20 (X64)



SQL Server にインストールされているサービスパックを確認するその他の方法

警告: レジストリ エディタは、誤操作をするとシステムに問題が発生する可能性があるため、上級者向けの方法です。

以下の手順に従って、レジストリ エディタを使用してサービスパックを確認できます。

  1. レジストリ エディタ を起動します。
    • スタート メニューを開き、regedit と入力します。
    • 検索結果から レジストリ エディタ を選択します。
  2. 以下のキーに移動します。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\Setup
  1. DWORD 値の ProductVersion を確認します。
    • ProductVersion をダブルクリックします。
    • 10進数 を選択して、値を確認します。

例:

ProductVersion の値が 20 の場合、インストールされているサービスパックは SQL Server 2019 CU20 です。

PowerShell を使用する

以下の PowerShell コマンドを実行して、サービスパックを確認できます。

Get-ItemProperty HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL15.MSSQLSERVER\Setup | Select-Object ProductVersion
ProductVersion
-------------
15.0.2070.20

WMI を使用する

wmic product get name,version,vendor where name like 'Microsoft SQL Server%'
名前                               バージョン                               ベンダー
-------------------------------------- ----------------------------------- --------
Microsoft SQL Server 2019 (RTM-GDR)   15.0.2070.20                          Microsoft Corporation

.NET Framework を使用する

using System;
using System.Management;

public class Program
{
    public static void Main(string[] args)
    {
        var searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Product WHERE Name LIKE 'Microsoft SQL Server%'");
        var results = searcher.Get();

        foreach (var result in results)
        {
            Console.WriteLine("名前: {0}", result["Name"]);
            Console.WriteLine("バージョン: {0}", result["Version"]);
            Console.WriteLine("ベンダー: {0}", result["Vendor"]);
            Console.WriteLine();
        }
    }
}
名前: Microsoft SQL Server 2019 (RTM-GDR)
バージョン: 15.0.2070.20
ベンダー: Microsoft Corporation

名前: Microsoft SQL Server Management Studio 18.10.2
バージョン: 15.0.2070.20
ベンダー: Microsoft Corporation

サードパーティ製のツールを使用する

SQL Server のサービスパックを確認するために、サードパーティ製のツールを使用することもできます。


sql-server


SQL ServerのGuid列におけるクラスター化インデックスのメリットとデメリット

SQL Server で Guid 列にクラスター化インデックスを作成するべきかどうかは、パフォーマンスとデータ整合性の要件に基づいて慎重に判断する必要があります。メリットとデメリットメリットGuid 列を主キーとして使用する場合、クラスター化インデックスはデータの挿入、更新、削除のパフォーマンスを向上させます。...


データベース エンジン チューニング アドバイザー (DTA) を使用して SQL Server データのスクリプトを取得する

SQL Server データのスクリプトを取得するには、いくつかの方法があります。方法SQL Server Management Studio (SSMS) を使用するSSMS は、SQL Server を管理するためのツールです。SSMS を使用して、データベースオブジェクトのスクリプトを生成することができます。...


SQL ServerにおけるDATETIMEとTIMESTAMPの落とし穴:開発者が知っておくべきポイント

データ型DATETIME:3 バイトの整数で表される年、月、日最大 3 桁の小数秒まで格納可能最大値: 2100-06-06 23:59:59. 999最小値: 1753-01-01 00:00:00. 000DATETIME:3 バイトの整数で表される年、月、日...


T-SQL で重複排除をマスターする:DISTINCT と ROW_NUMBER 関数の詳細比較

SQL Server でテーブルから重複行を排除するには、主に 2 つの方法があります。DISTINCT キーワードを使用するROW_NUMBER 関数とサブクエリを使用するそれぞれの方法について、詳細と利点・欠点をご紹介します。構文例説明...


【SQL Server】重複もOK!UNION ALLで結合したデータをORDER BYで美しく整列

SQL Server において、UNION ALL と ORDER BY を組み合わせることは、複数のクエリの結果を結合し、ソートされた状態で表示するために役立ちます。しかし、ORDER BY 句をどこに配置するかによって結果が大きく異なるため、注意が必要です。...