SQLServerへ接続する方法は形式、バージョンが複数あります。
Webで検索しても2022年現在では非推奨となっている方法の記事も多く見つかり、名前も似ているのでややこしいので整理してみました。
前提知識
基礎的な用語の説明です。
■ODBC (Open Database Connectivity)
データベース操作対象とした業界標準のAPI仕様。
DBにアクセするにはODBCドライバーが必要となる。
■OLE DB
COM(Component Object Model)を利用してデータ操作を行うための仕組み。データベース以外にもWebページ、Office文書などへのアクセスも考慮した汎用的な仕組みで 「OLEDB Provider」を介してデータにアクセスする。
■ADO (ActiveX Data Objects)
OLE DBの上位に位置するAPIレイヤー。
内部的にはODBCドライバー、OLEDB Providerを経由してアクセスする。
イメージ図です。
プロバイダ、ドライバーの種類
ODBCドライバーには以下のようなものがあります。
名称 | 内容 |
---|---|
SQL Server Native Client | 旧形式。現在では非推奨 |
Microsoft ODBC Driver for SQL Server | 新形式 |
OLEDBには以下のようなものがあります。
名称 | 内容 |
---|---|
SQL Server Native Client (SQLNCLI) | 旧形式。現在では非推奨 |
Microsoft OLE DB Provider for SQL Server (SQLOLEDB) | 旧形式。現在では非推奨 |
Microsoft OLE DB Driver for SQL Server (MSOLEDBSQL) | 新形式 |
補足情報
・「Microsoft OLE DB Driver for SQL Server」は一度非推奨になりましたが2018年に非推奨が取り消しとなりました。
Announcing the new release of OLE DB Driver for SQL Server
・「Microsoft OLE DB Driver for SQL Server」のVer19から暗号化がデフォルトで有効になりました。接続に証明書を利用するか、暗号化を明示的に無効にする必要があります。
メジャーバージョンの相違点
以上
リンク