2011-07-15 23 views
0

MSSQLデータベースに接続するには、Sun JDBC ODBCブリッジとMSSQL JDBCドライバの2つの方法があります。Sun JDBC ODBCドライバまたはMSSQL JDBCドライバ

私たちはいくつかの再編成を行っており、データベース接続の統一的なアプローチを望んでいます。

どのドライバを使用する必要がありますか? (私は目的を非常に広いレベルで質問を残していますが、人々の意見が何であるか聞きたいです)

答えて

4

サンのブリッジドライバは、プロトタイピングやクイック開発以外には使用しないでください。

使用可能な場合は、常にタイプIV JDBCドライバを使用する必要があります。 SQL Serverのために私が知っているのは2つあります:Microsoft's versionjTDSです。

Sun/Oracleもそうです。これは彼らのdocsからです:

可能な場合には、橋や ODBCドライバの代わりに純正のJava JDBCドライバを使用します。これにより、ODBCによって要求されるクライアント構成 が完全に排除されます。また、 ブリッジ(つまり、ネイティブ・ライブラリー、ODBCドライバー・マネージャー ライブラリー、ODBCドライバー・ライブラリー、およびデータベース)によって取り込まれたネイティブ・コードのエラーによって、Java VM が壊れる可能性がなくなります。クライアントライブラリ)。

JDBC-ODBCブリッジドライバは、試作 の試作に使用すること、および他のJDBCテクノロジベースのドライバ が存在しない場合に推奨されます。市販の全Java JDBCドライバを使用できる場合は、 はブリッジの代わりに使用することをお勧めします。

0

マイクロソフトまたはjTDS driverが提供するMSSQL Type 4 JDBC driverを使用してください。これを書いている時点では、Microsoftが提供するMSSQL JDBCドライバはバージョン3.0になりますが、バージョン4はプレビューリリースとして利用できます。

実際には、マシンにインストールされているODBCドライバへのブリッジであるため、Sun JDBC ODBCドライバは避けてください。少なくとも1つのタイプ(ODBCブリッジ)またはタイプ2(JNIベース)ドライバではなく、タイプ4ドライバを使用すべき理由について、StackOverflowで少なくともone questionが尋ねられました。

ベンダーからJDBCドライバーを見つけることができない場合を除き、そのタイプの質問に掲示されている回答に追加するには、タイプ1(ODBCドライバーブリッジ)を避けてください。結局のところ、ベンダが提供するODBCドライバとSun JDBC-ODBCドライバの両方に依存することは意味をなさないものです。プロダクションで遭遇したバグもいずれかにある可能性があります。したがって、ライン・オブ・ビジネス・アプリケーションのためにこの決定を下す場合は、十分にテストされたサード・パーティのJDBCドライバ(jTDSまたはDataDirectなど)またはベンダー提供のドライバを使用する必要があります(経験によってドライバまたはベンダーが問題を解決できないか、十分な時間が経過しても回避策を提供できない場合)。追加のセキュリティと設定が必要になる -

OpenLink Multi-tier JDBC Driver for SQL Serverあり
1

...

このドライバは、その場所を持っています。

関連する問題