次の方法で共有


SQL Server Native Client を使用する場合

適用対象: SQL Server Azure SQL データベース Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

重要

SQL Server Native Client (SNAC) は同梱されていません。

  • SQL Server 2022 (16.x) 以降のバージョン
  • SQL Server Management Studio 19 以降のバージョン

SQL Server Native Client (SQLNCLI または SQLNCLI11) と従来の Microsoft OLE DB Provider for SQL Server (SQLOLEDB) は、新しいアプリケーション開発には推奨されません。

新しいプロジェクトの場合は、次のいずれかのドライバーを使用します。

SQL Server データベース エンジン (バージョン 2012 から 2019) のコンポーネントとして付属する SQLNCLI については、この「サポート ライフサイクルの例外」を参照してください。

SQL Server Native Client は、SQL Server データベース内のデータにアクセスするために使用できるテクノロジの 1 つです。 各種データ アクセス テクノロジの詳細については、「データ アクセス テクノロジのロードマップ」を参照してください。

アプリケーションのデータ アクセス テクノロジとして SQL Server Native Client を使用するかどうかを決定する場合は、いくつかの要因を考慮する必要があります。

新しいアプリケーションで、Microsoft Visual C# や Visual Basic などのマネージド プログラミング言語を使用しており、SQL Server の新機能にアクセスする必要がある場合は、.NET Framework に含まれている .NET Framework Data Provider for SQL Server を使用する必要があります。

COM ベースのアプリケーションを開発していて、SQL Server で導入された新機能にアクセスする必要がある場合は、SQL Server Native Client を使用する必要があります。 SQL Server の新機能にアクセスする必要がない場合は、引き続き Windows Data Access Components (WDAC) を使用できます。

既存の OLE DB および ODBC アプリケーションの主な問題は、SQL Server の新機能にアクセスする必要があるかどうかです。 アプリケーションが既に完成していて、SQL Server の新機能を必要としない場合は、引き続き WDAC を使用できます。 ただし、 xml データ型など、これらの新機能にアクセスする必要がある場合は SQL Server Native Client を使用する必要があります。

SQL Server Native Client と MDAC はどちらも、行のバージョン管理を使用した読み取りコミット済みトランザクション分離をサポートしますが、スナップショット トランザクション分離をサポートするのは SQL Server Native Client のみです。 (プログラミング用語では、"行のバージョン管理機能を使用した Read Committed トランザクション分離" は "Read Committed トランザクション" と同義です)。

SQL Server Native Client と MDAC の違いについては、「 アプリケーションを MDAC から SQL Server Native Client に追加する」を参照してください。

参照

SQL Server Native Client プログラミング
ODBC の使用法に関するトピック
OLE DB の使用法に関するトピック