web-dev-qa-db-ja.com

OLEDBプロバイダーがSQLServerに使用するCrystalReports

新しいCrystalReportを設計するときは、新しいデータベース接続を作成する必要があります。要件のDAO、RDO、またはその他のオプションよりも理にかなっているため、「ドライバー」としてOLE DB(ADO)を選択しました。

リモートサーバーでSQLServer 2005/2008ストアドプロシージャを実行し、.NETクライアントのCrystalReportsに結果を表示する必要があります。

OLE DBを選択すると、正しいプロバイダーを選択するための追加のオプションが表示されます。そのうちのいくつかは次のとおりです。

  • ODBCドライバー用のMicrosoftOLEDBプロバイダー
  • SQLServer用のMicrosoftOLEDBプロバイダー
  • SQL Native Client
  • SQLServerネイティブクライアント10.0

どちらを使用するのが最適ですか?

  • さまざまな欠点(ODBC定義を設定し、おそらく遅い)のために、ODBCドライバーを使用したくありません。
  • SQLServerのOLEDBプロバイダーとネイティブクライアントの比較がわからない
  • ネイティブクライアントは、各デスクトップでネイティブクライアントセットアップを実行することを強制しました。また、SQLServerのバージョンごとに異なるバージョンがあるようです。

当初、互換性とパフォーマンスの論理的な選択はネイティブクライアントだと思っていましたが、展開が問題のようです(何か間違ったことをしている場合を除く)

ここで使用するのに最適な接続ドライバー/プロバイダーの組み合わせは何ですか?

14
Philip Fourie

SQLServer用のMicrosoftOLEDBプロバイダーを使用します。ネイティブクライアントを使用する場合は、アプリケーションと一緒に配布する必要があります。

この記事では、ネイティブクライアントについて詳しく説明します。 http://blog.flex2sql.com/index.php/2009/02/how-and-when-to-use-sql-server-native-client/

7