Windows 10 64ビットプロを使用して、SQL Server 2016のデータベースにシステムDSN(64ビット)をセットアップしていました。データソースをセットアップするドライバーを選択するように求められましたが、次の選択肢があります。
これらすべてのドライバーでデータソースをセットアップできるように思えました。次に、速度と効率の面でどちらを選択する必要がありますか?それらの違いは何ですか?
おかげで、
ジェイソン
SQL Server用のODBCドライバー
ODBCは、C、C++、PHP、Pythonなど、SQL Serverに接続するためのその他のもので作成されたアプリケーション用の主要なネイティブデータアクセスAPIです。
データ統合シナリオで広く使用されています。
また、Windows上でアプリケーションを開発し、Linuxに展開する場合にも推奨されます。
SQL Server
SQL ServerドライバーのフルネームはSQL Server ODBC Driverです。SQL2000以降の古いドライバーです。これを使用してSQL Server 2016に接続できますが、新しいサーバーにアクセスすることはできません。 SQL Server 2016の機能
SQL Server Native Client
SQL Server Native Clientには、SQL OLE DBプロバイダーとSQL ODBCドライバーの両方が含まれ、SQL Serverへのネイティブ接続をサポートし、SQL Server 2016のすべての機能をサポートします。 Windows環境で最高です
SQL Server Native Client RDA
Microsoft SQL Server Compact 3.5のリモートデータアクセス(RDA)により、アプリケーションはリモートSQL Serverデータベーステーブルのデータにアクセスできます。
また、SQL Server Compact 3.5でそのデータを保存、読み取り、更新してから、元のSQL Serverテーブルを更新することもできます。
RDAは将来のリリースで削除されるため、使用しないでください。
したがって、上記の基準に基づいてSQLドライバーを選択します。
このドライバーは、SQL Server Native Clientの後継として 2013年に発表 でした。最新のSQL Serverバージョン(2016および2017で13)と共にインストールされます。 スタンドアロンインストーラー もあります。 Microsoft SQL Serverのドライバー履歴 ODBC用の「SQL Server」および「SQL Server Native Client」よりもこのドライバーを優先することをお勧めします。 「SQL Server Native Client」に追加された機能:ドライバー対応の接続プーリング、接続の復元力、および非同期実行(ポーリング)。 Microsoft ODBC SQL Server Teamブログのドライバー で現在の開発をフォローできます。
Driver={ODBC Driver XX for SQL Server}
(インストール済みバージョンの場合はXX
。 システム要件、インストール、およびドライバーファイル を参照してください。)
SQL Server 2005で導入され、SQL Serverに同梱されています(また sqlncli.msi
from SQL Server機能パック )。 「SQL Server」に追加された機能:複数のアクティブな結果セット(MARS)、ユーザー定義データ型(UDT)、クエリ通知、スナップショット分離、およびXMLデータ型のサポート。
Driver={SQL Server Native Client}
(SQL Server 2005)Driver={SQL Server Native Client 10.0}
(SQL Server 2008)Driver={SQL Server Native Client 11.0}
(SQL Server 2012以降)
リモートデータアクセス(RDA)は、SQL Server Compactの機能であり、「リモートのSQL Serverデータベーステーブルのデータにアプリケーションがアクセスできるようにします」。多くのドキュメントは見つかりませんが、このドライバーはCompact Editionでのレプリケーションシナリオをサポートすることを目的としていたようです。
Microsoft Data Access Components(MDAC) (現在はWindows Data Access Components(WDAC)と呼ばれる)に含まれています。このドライバーは、Windows(98およびNT 4.0以降)でデフォルトで使用可能です。
Driver={SQL Server}
SQL ServerネイティブクライアントとODBC用の.NET Frameworkデータプロバイダー
SQL Serverネイティブクライアントの最後のバージョンでは、Microsoft®SQLServer®2012ネイティブクライアントはSQL Serverネイティブクライアント11.0とも呼ばれているようです。 SQL Server 2014以降の新機能をサポートしていません
SNAC 11は、透過ネットワークIP解決、常に暗号化、Azure AD認証、一括コピー、テーブル値パラメーターなど、SQL Server 2012の一部として利用できなかったSQL Server 2014およびSQL Server 2016でリリースされた機能をサポートしないことに注意してください。
https://blogs.msdn.Microsoft.com/sqlreleaseservices/snac-lifecycle-explained/
SQL Server 2014以降の新機能を利用するには、Microsoft®ODBC SQL Server用のドライバー11または13を使用する必要があります
インストールしたドライバーを確認するには、powershell(32/64ビット-使用するドライバーアーキテクチャに応じて)を起動して実行します
[〜#〜] oledb [〜#〜]
(New-Object System.Data.OleDb.OleDbEnumerator).GetElements() | select SOURCES_NAME, SOURCES_DESCRIPTION
[〜#〜] odbc [〜#〜]
Get-OdbcDriver | select Name,Platform
https://docs.Microsoft.com/en-us/sql/connect/connect-history#odbc
SQL Server用のMicrosoft ODBCドライバーには、3つの異なる世代があります。
これは、MDACパッケージ( https://support.Microsoft.com/en-us/help/899456 )からの古いもので、現在(XP/2003以降)Windows-OSに付属しています。 https://docs.Microsoft.com/en-us/sql/connect/connect-history#mdacwdac-releases
... Windows Vista以降、データアクセスコンポーネントはWindowsデータアクセスコンポーネント(Windows DAC)と呼ばれるようになりました。どちらもSQL Serverデータベースへのネイティブデータアクセスを提供しますが、SQL Server Native ClientはSQL Server 2005の新機能を公開するように特別に設計された(9.x)であると同時に、以前のバージョン。
https://docs.Microsoft.com/en-us/sql/connect/connect-history#odbc
SQL Server Native Clientは、OLE DBとODBCの両方に使用されるスタンドアロンライブラリです。 SQL Server Native Client(多くの場合SNACと略されます)は、SQL Server 2005〜2012に含まれていました。SQLServer Native Clientは、新しいSQL Server 2012からSQL Server 2012に導入された機能 =。 (Microsoft/Windows Data Access Componentsは、SQL Serverのこれらの新機能については更新されません。)SQL Server 2012以降の新機能については、SQL Server Native Clientは更新されません。 SQL ServerのMicrosoft ODBCドライバーまたはSQL ServerのMicrosoft OLE DBドライバーに切り替えて、今後、新しいSQL Server機能を活用したい場合は
.NET Compact Framework 3.5に付属
https://docs.Microsoft.com/en-us/sql/connect/connect-history#odbc
SQL Server 2012以降、SQL Server用のプライマリODBCドライバーは、SQL Server用のMicrosoft ODBCドライバーとして開発およびリリースされました。
新しいOLE DBプロバイダーは、Microsoft OLE DB Driver for SQL Server(MSOLEDBSQL)と呼ばれます。 新しいプロバイダーは今後の最新のサーバー機能で更新されます。既存のアプリケーションでSQL Server用の新しいMicrosoft OLE DBドライバーを使用するには、接続文字列をSQLOLEDBまたはSQLNCLIからMSOLEDBSQLへ。 https://blogs.msdn.Microsoft.com/sqlnativeclient/2018/03/30/released-Microsoft-ole-db-driver-for-sql-server/
将来性のあるドライバーを使用してみてください。