ODBC OLEDBとJDBCの違いとは?

スポンサーリンク
スポンサーリンク


ODBC OLEDBとJDBCの大きな違いは、ODBCはマイクロソフトが開発したリレーショナルデータベースにアクセスするためのAPI、OLEDBはオラクルが開発したリレーショナルデータベースとノンリレーショナルデータベースにアクセスするためのAPIであるのに対し、JDBCはマイクロソフトが開発したリレーショナルデータベースとノンリレーデータベースにアクセスするためのAPIであることである

ソフトウェアを開発する場合、アプリケーションとデータベースを接続する必要がある

例えば、医療センター管理システムを想定する。

プログラマーは、患者の記録や医師の記録などを挿入、更新、削除するためのコードを書かなければならない。

これらのシステムは、常にデータベースとデータをやり取りしています。

ODBC、OLEDB、JDBCの3つのAPIは、データにアクセスするためにアプリケーションをデータベースに接続することを可能にするものです

スポンサーリンク

ODBCとは

ODBCとは、Open Database Connectivityの略です。

SQLを使ってDBMSにアクセスするための標準的なAPI(Application Programming Interface)です。

また、アプリケーションは、ODBCドライバマネージャを使用してODBC機能を使用することができます。

ドライバはDBMSにクエリを渡すことができる。

ODBC を使用するアプリケーションは、ODBC 準拠と呼ばれる。

さらに、ODBCは最大の相互運用性を可能にする

つまり、1つのアプリケーションで異なるDBMSにアクセスすることができる。

ユーザーはODBCドライバを追加することで、アプリケーションを必要なDBMSに接続することができる

Main Difference - ODBC OLEDB vs JDBC

ODBCインターフェースには、関数呼び出し(Core関数と拡張関数)を持つODBCライブラリが含まれています。

また、標準的なエラーコードのセットと、DBMSへの接続とログの記録方法も提供します。

ODBCは、様々なアプリケーションやデータソースの間でデータを交換するためのインターフェイスとして機能します。

OLEDBとは

OLEDBは、Object Linking and Embedding Databaseの略です。

これは、異なるソースからのデータに統一された方法でアクセスするのに役立つ API です。

OLEDB は Component Object Model (COM) に基づいており、Microsoft Data Access Components (MDAC) スタックの一部です。

OLEDBは、SQLを使用しない非リレーショナルデータベースからデータにアクセスすることができるため、ODBCよりも高度です。

さらに、OLEDBはデータソースをアプリケーションから分離している。


アプリケーションによって必要とするデータの種類が異なるため、あらゆる技術的手法でアクセスする方法を知っておくことは重要ではないからだ

OLEDBには、コンシューマとプロバイダと呼ばれる2つの大きなセクションがあります。

コンシューマはデータを取得し、プロバイダはコンシューマにデータを与える。

JDBCとは

JDBCは、Java Database Connectivityの略です。

Javaアプリケーションと異なるデータベースとの間で、データベースに依存しない接続性を提供するAPIです。


Java Standard Edition (Java SE)で利用可能です

JDBCにより、Javaプログラムは企業レベルのデータにアクセスすることができます。

JDBCドライバのサポートにより、異種環境でのデータアクセスも可能です

Javaアプリケーションをデータベースに接続する場合、以下の手順で行う必要があります

  • データベースと接続するためのドライバをロードする。
  • データベース・オブジェクトと通信するための接続を作成する。
  • 必要なSQL文を実行する
  • 結果セットを返す

ODBC OLEDBとJDBCの違い

定義

ODBCはデータベース管理システム(DBMS)にアクセスするための標準的なアプリケーション・プログラミング・インターフェース(API)です。

一方、OLEDBは様々なソースからのデータに統一的にアクセスするためのAPIであり、JDBCはプログラミング言語JavaのためのAPIで、クライアントがデータベースにアクセスする方法を定義しているものです。

したがって、これが ODBC OLEDB と JDBC の主な違いです。

ロングフォーム

ODBCはOpen Database Connectivity、OLEDBはObject Linking and Embedding Database、JDBCはJava Database Connectivityを意味します

デベロッパー

ODBC OLEDBとJDBCのもう一つの違いは、その開発者です。

マイクロソフトはODBCとOLEDBの開発者であり、オラクルはJDBCの開発者です。

関連データベース

ODBCはリレーショナルデータベースで動作しますが、OLEDBとJDBCはリレーショナルデータベースと非リレーショナルデータベースで動作します。

したがって、この点もODBCとOLEDB、JDBCの違いと言えるでしょう。

結論

ODBC OLEDBとJDBCの大きな違いは、ODBCがリレーショナルデータベースにアクセスするためにMicrosoftが開発したAPIであるのに対し、OLEDBはリレーショナルデータベースと非リレーショナルデータベースの両方にアクセスするためにOracleが開発したAPIである点です。

タイトルとURLをコピーしました