オープン・データベース・コネクティビティ(ODBC)は、アプリケーション・プログラマーがどのデータベースにもアクセスが可能ととするオープン・スタンダードのアプリケーション・プログラミング・インターフェース(API)です。ODBCプログラミングサポートの主な提案者および提供者はマイクロソフトですが、ODBCはOpen Groupの標準SQL(Structured Query Language)コール-レベル・インターフェイス(CLI)を基にしています。Open Groupは、Oracle、IBM、Hewlett Packard Enterpriseを含む多くの主要ベンダーがスポンサーで、このコンソーシアムはTOGAF(The Open Group Architecture Framework)を開発しています。The Open GroupのCLI仕様に加えて、ODBCはデータベースAPI用のISO / IECにも準拠しています。
ODBCのしくみ
ODBCは4つのコンポーネントで構成され、機能を有効にするために連携して動作します。ODBCは、プログラムがデータベースへの独自のインターフェースを知らなくてもデータベースにアクセスするSQLリクエストを使用できるようにします。ODBCはSQLリクエストを処理し、それを各データベースシステムが理解できるリクエストに変換します。
ODBCは次の4つの個別コンポーネントから構成されます。
Application: ODBC関数を処理して呼び出し、SQLステートメントを送信します。
Driver manager:各アプリケーションのドライバを起動させます。
Driver: ODBCファンクション・コールを処理し、データ・ソースに対してSQLリクエストを送信します。
Data source:アクセスされるデータとデータベース管理システム(DBMS)OS
OBDCは、MyODBCと呼ばれるドライバとMySQLと連携することもできます。 これは、MySQL Connecter / ODBCと呼ばれることもあります。
JDBC vs. ODBC
Java Database Connectivity(JDBC)APIは、Javaプログラミング言語を使用してデータベースにアクセスします。ユーザはJDBC APIを使用してJava言語でプログラムを作成する場合、JDBC-ODBCブリッジを含むソフトウェアを使用して、ODBCでサポートされるデータベースにアクセスすることができます。
ただし、APIコールはJDBCブリッジを介してODBCドライバに渡され、次にネイティブのデータベース接続インターフェイスに渡される必要があるため、パフォーマンス・オーバーヘッドが発生するため、JDBC-ODBCブリッジ(またはJDBCタイプ1ドライバ)を移行アプローチとして考える必要があります。また、JDBC-ODBCブリッジはJava Development Kit(JDK)8で削除され、Oracleはこれをサポートしません。 JDBC-ODBCブリッジではなく、データベース・ベンダが提供するJDBCドライバを使用することを推奨します。
Open Database Connectivityの歴史
ODBCはSQL Access Groupに作成され、1992年の9月に最初にリリースされました。
Microsoft WindowsはODBC製品を初めて提供しましたが、UNIX、OS/2、Macintoshプラットフォーム用のバージョンも存在します。 ODBCは2016年6月に最新バージョン4.0を開発していると発表しましたが、2017年9月時点ではリリースされていません。
Common Object Request Broker Architecture(CORBA)と呼ばれる新しい分散オブジェクト・アーキテクチャーでは、Persistent Object Service(POS)はCLIとODBCの両方のスーパーセットです。
ODBCは1992年のスタート以来広く普及を続けて、すべてのプラットフォームとデータベースに対応したドライバを提供しています。 しかし、シンクライアント・コンピューティングは、HTMLが中間フォーマットとして成長したため、企業におけるOBDCの使用度は縮小されました。
関連したトピックス
- HiT JDBC/400: IBM i (AS/400)対応のJDBCドライバ
- [HiT ODBC/DB2]設定とDB2 UDBとSQL開発ツール(Accessなど)との連携
- 接続ドライバについて【リアルタイムレプリケーションツールDBMoto】
- Java JDBC4.1準拠のHiT JDBC/DB2 Ver4.1をリリース
- メインフレームDB2への各種アクセス手法 [ DB2 Connectivityを活用して]
- HiT ODBC/400 + SQL GUIツール(Access等)でAS/400 DB2を簡単にアクセス可能に
- [ DB2 Connectivity ] 開発キット C# Toolkit で出来ること :プログラミング無しで検証可能
- HIT OLEDB/ODBC開発キットでAS/400のデータベースを利用してのASP構築
- HiT JDBC と IBM JDBC との比較
- AS/400のストアド・プロシージャとディストリビューテッド・プログラム・コール(DPC) [HiT ODBC/400 と HiT OLEDB/400]