システム必要条件、インストール、およびドライバー ファイル

ODBC ドライバーのダウンロード

この記事では、SQL Server に接続する ODBC ドライバーについて説明します。

SQL バージョンの互換性

互換性とは、ドライバーが、リリースの時点で SQL の既存のリリースに対して互換性のテストが行われていることを示します。 SQL Server のリリースでは、ほとんどの場合、既存のクライアント ドライバーとの下位互換性を維持するようにしています。 ただし、SQL Server リリースの新機能は、古いクライアント ドライバーでは使用できない場合があります。

データベースのバージョン →
↓ ドライバーのバージョン
Azure SQL データベース Azure Synapse Analytics Azure SQL Managed Instance SQL Server 2022 SQL Server 2019 SQL Server 2017 SQL Server 2016 SQL Server 2014 SQL Server 2012 SQL Server 2008 R2 SQL Server 2008 SQL Server 2005
18.4 はい イエス イエス イエス イエス イエス イエス はい
18.3 はい イエス イエス イエス イエス イエス イエス はい
18.2 はい イエス イエス イエス イエス イエス イエス はい
18.1 はい イエス イエス イエス イエス イエス イエス はい
18.0 はい イエス イエス イエス イエス イエス イエス イエス はい
17.10 はい イエス イエス イエス イエス イエス イエス イエス はい
17.9 はい イエス イエス イエス イエス イエス イエス はい
17.8 はい イエス イエス イエス イエス イエス イエス はい
17.7 はい イエス イエス イエス イエス イエス イエス はい
17.6 はい イエス イエス イエス イエス イエス イエス はい
17.5 はい イエス イエス イエス イエス イエス イエス はい
17.4 はい イエス イエス イエス イエス イエス イエス はい
17.3 はい イエス イエス イエス イエス イエス イエス イエス イエス はい
17.2 はい イエス イエス イエス イエス イエス イエス イエス はい
17.1 はい イエス イエス イエス イエス イエス イエス イエス はい
17.0 はい イエス イエス イエス イエス イエス イエス イエス はい
13.1 はい イエス イエス イエス イエス 有効
13 はい イエス イエス イエス はい
11 はい イエス イエス イエス はい

接続文字列の詳細

接続文字列で指定するドライバー名は、次のいずれかの値です。

  • ODBC Driver 11 for SQL Server
  • ODBC Driver 13 for SQL Server (13 と 13.1 の両方)
  • ODBC Driver 17 for SQL Server
  • ODBC Driver 18 for SQL Server

サポートされるオペレーティング システム

次のマトリックスは、Windows オペレーティング システムのバージョンでサポートされているドライバーのバージョンを示しています。

オペレーティング システム →
↓ ドライバーのバージョン
Windows Server 2022 Windows Server 2019 Windows Server 2016 Windows Server 2012 R2 Windows Server 2012 Windows Server 2008 R2 Windows 11 Windows 10 Windows 8.1 Windows 7 Windows Vista SP2
18.4 はい イエス イエス イエス はい
18.3 はい イエス イエス イエス イエス はい
18.2 はい イエス イエス イエス イエス はい
18.1 はい イエス イエス イエス イエス イエス イエス はい
18.0 はい イエス イエス イエス イエス イエス イエス はい
17.10 はい イエス イエス イエス イエス イエス イエス はい
17.9 はい イエス イエス イエス イエス イエス イエス はい
17.8 はい イエス イエス イエス イエス はい
17.7 はい イエス イエス イエス イエス はい
17.6 はい イエス イエス イエス イエス はい
17.5 はい イエス イエス イエス イエス はい
17.4 はい イエス イエス イエス イエス イエス イエス はい
17.3 はい イエス イエス イエス イエス イエス イエス はい
17.2 はい イエス イエス イエス イエス イエス はい
17.1 はい イエス イエス イエス イエス イエス はい
17.0 はい イエス イエス イエス イエス イエス はい
13.1 はい イエス イエス イエス イエス イエス 有効
13 はい イエス イエス はい
11 はい イエス イエス はい

Microsoft ODBC Driver for SQL Server のインストール

Windows 向けのダウンロードのいずれかから msodbcsql.msi を実行すると、ドライバーがインストールされます。

Note

Driver 17.1.0.1 以下をインストールしているお客様は、新しいバージョンの Driver をインストールする前にこれを手動でアンインストールすることをお勧めします。

Native Client とサイド バイ サイド

ドライバーは、SQL Server Native Client とサイド バイ サイドでインストールできます。 ドライバーのメジャー バージョン (11、13、17、18) はすべて、相互にサイド バイ サイドでインストールすることもできます。

msodbcsql.msi を呼び出すと、既定ではクライアント コンポーネントのみがインストールされます。 クライアント コンポーネントは、ドライバーを使用して開発されたアプリケーションの実行をサポートするファイルです。 SDK コンポーネントをインストールするには、コマンド ラインで ADDLOCAL=ALL を指定します。 次に例を示します。

msiexec /i msodbcsql.msi ADDLOCAL=ALL

エンドユーザー ライセンス

/passive/qn/qb、または /qr オプションを使用してインストールする場合は、IACCEPTMSODBCSQLLICENSETERMS=YES を指定してエンド ユーザー ライセンスの条項に同意します。 このオプションは、すべて大文字で指定する必要があります。 次に例を示します。

msiexec /quiet /passive /qn /i msodbcsql.msi IACCEPTMSODBCSQLLICENSETERMS=YES ADDLOCAL=ALL

サイレント アンインストール

サイレント アンインストールを行う方法を次の例に示します。

msiexec /quiet /passive /qn /uninstall msodbcsql.msi

依存関係を示す

アプリケーションでは、ドライバーを使用する場合、APPGUID インストール オプションを使ってドライバーに依存していることを示す必要があります。 これを示すことにより、ドライバーのインストーラーは、アンインストール前に依存するアプリケーションを報告できます。 ドライバーの依存関係を指定するには、ドライバーのサイレント インストールを行うときに APPGUID コマンド ライン パラメーターをご利用の製品コードに設定します Microsoft インストーラーを使用してアプリケーションのセットアップ プログラムをバンドルするときは、製品コードを作成する必要があります。 次に例を示します。

msiexec /i msodbcsql.msi APPGUID={ <Your dependent application's APPGUID> }

コマンドライン ツール: sqlcmd.exe および bcp.exe

ドライバーで使用するための bcp.exe および sqlcmd.exe のツールは、Microsoft Command Line Utilities 11 for SQL ServerMicrosoft Command Line Utilities 13 for SQL Server、または Microsoft Command Line Utilities 13.1 for SQL Server でダウンロードできます。 sqlcmd.exe および bcp.exe をインストールするにはドライバーが必要です。

bcp.exe および sqlcmd.exe はバージョン 11 の場合は %PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC110\Tools サブフォルダーに、13 と 13.1 の場合は 130\Tools にインストールされます。

BCP 関数を使うアプリケーションでは、アプリケーションのコンパイルに使われたヘッダー ファイルとライブラリに付属する、同じバージョンのドライバーを指定する必要があります。

たとえば、msodbcsql11.libmsodbcsql.h を使って ODBC アプリケーションをコンパイルするときは、接続文字列で DRIVER={ODBC Driver 11 for SQL Server} を使います。

Microsoft ODBC Driver for SQL Server on Windows のコンポーネント

Windows 上の ODBC ドライバーには、次のコンポーネントが含まれています。

コンポーネント 説明
msodbcsql18.dll または
msodbcsql17.dll または
msodbcsql13.dll または
msodbcsql11.dll
ドライバーのすべての機能を含む DLL (ダイナミック リンク ライブラリ) ファイル。 このファイルは %SYSTEMROOT%\System32 にインストールされます。
msodbcdiag18.dll または
msodbcdiag17.dll または
msodbcdiag13.dll または
msodbcdiag11.dll
ドライバーの診断 (トレース) インターフェイスを含むダイナミック リンク ライブラリ (DLL) ファイル。 このファイルは %SYSTEMROOT%\System32 にインストールされます。
msodbcsqlr18.rll または
msodbcsqlr17.rll または
msodbcsqlr13.rll または
msodbcsqlr11.rll
ドライバー ライブラリに付随するリソース ファイル。 このファイルは %SYSTEMROOT%\System32\1033 にインストールされます。
s13ch_msodbcsql.chm または
s11ch_msodbcsql.chm
ドライバーのデータ ソースを作成する方法が説明されているデータ ソース ウィザードのヘルプ ファイル。 このファイルは %SYSTEMROOT%\System32\1033 にインストールされます

注: ODBC Driver 17 以降用の chm ファイルはありません。
msodbcsql.h ドライバーを使用するために必要な新しい定義がすべて含まれているヘッダー ファイル。

注: 同じプログラムで msodbcsql.hodbcss.h を参照することはできません。
ODBC Driver 18 用の msodbcsql.h は、%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\180\SDK にインストールされます。
ODBC Driver 17 用の msodbcsql.h は、%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\170\SDK にインストールされます。
ODBC Driver 13 用の msodbcsql.h は、%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\130\SDK にインストールされます。
ODBC Driver 11 用の msodbcsql.h は、%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\110\SDK にインストールされます。
msodbcsql18.lib または
msodbcsql17.lib または
msodbcsql13.lib または
msodbcsql11.lib
ドライバーの一部である bcp ユーティリティ関数を呼び出すために必要なライブラリ ファイル。

注: プログラムでこのライブラリ ファイルを参照する場合は、自分のシステム パスと、アプリケーションを使うユーザープログラムのシステム パスに、それが含まれることを確認します。
msodbcsql18.lib%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\180\SDK にインストールされます。
msodbcsql17.lib%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\170\SDK にインストールされます。
msodbcsql13.lib%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\130\SDK にインストールされます。
msodbcsql11.lib%PROGRAMFILES%\Microsoft SQL Server\Client SDK\ODBC\110\SDK にインストールされます。