「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ODBC

pointこの用語のポイント

pointプログラムとデータベースの間に入って仲立ちをする部品だよ

pointマイクロソフトさんが作ったよ

point「Open Database Connectivity」の略だよ

スポンサーリンク

簡単に書くよ

ODBC(読:オーディービーシー)とは

マイクロソフトさんが作った、データベースとやり取りするための通訳。
もう少し具体的に書くと

マイクロソフトさんが生み出した仕組みで、データベースとプログラムの間に入って仲立ちをしてくれる部品(に関する取り決め)
です。


image piyo

詳しく書くよ

サクっと一言で説明すると

マイクロソフトさんが生み出した、プログラムデータベースの仲立ちをしてくれるやつ

が「ODBC」です。
データベースとプログラムの通訳なイメージです。

ODBC

ちなみに「Open Database Connectivity(オープン・データベース・コネクティビティ)」の略で「ODBC」ね。
気が向いたら、覚えてあげてください。

ODBC2

※「Open Database Connectivity」を何となく日本語にすると「開けた情報の基地に接続するやつ」となります。[詳細]

ここまでを踏まえて、ピヨピヨな例を見ていきましょう。

ピヨ太君が経営するピヨピヨカンパニーの取引先は個性的な人たちばかりです。

ピヨ太ママは若いころに訪れて以来、イギリスの魅力にやられてしまいました。
そのせいか英語でしかしゃべりません。

ODBC3

ピヨ太パパはフランスかぶれです。
喋る言葉はフランス語です。

ODBC4

アクマ君は中国好きです。
中国語での会話を求めます。

ODBC5

そうすると、ピヨ太君をはじめとしたピヨピヨカンパニーの社員は大変です。
ピヨ太ママと話すときは英語、ピヨ太パパと話すときはフランス語、アクマ君と話すとき中国語、のように使い分けなくてはいけません。

ODBC6

これは「面倒だな……」と感じたピヨ太君は、スペシャルスーパー通訳のピヨ子さんを雇いました。
ピヨ子さんはスペシャルでスーパーな通訳です。
英語もフランス語も中国語も話せます。
しかも!
普段話している言葉は日本語です。

ODBC7

その後、ピヨ太君は社員たちに「今後、各取引先とのやり取りはピヨ子さんを経由してやるようにしたから」と宣言しました。
ピヨ太君たちが伝えたい内容をピヨ子さんが翻訳して、各取引先に伝えてくれるのです。

ODBC8

これには、みんな大喜びです。
なにせピヨ子さんは日本語が話せます。
伝えたい内容を日本語でピヨ子さんに伝えれば、各取引に伝わります。
日本語、英語、フランス語、中国語の四か国語を覚えないといけないはずだったのが、日本語だけ覚えれば良くなりました。
語学が苦手な社員も一安心です。

この話における、ピヨピヨカンパニーの社員たちがプログラムだと思ってください。
ピヨ太ママをはじめとした各取引先がデータベースです。
ピヨ子さんがODBCに相当します。

実際のデータベースには、いろいろな種類があります。
OracleMySQLSQL Serverなどです。

これらのデータベースは、それぞれ個性があります。
全部が全部、同じようには扱えません。
例えばデータベースへ接続する方法も、データベースの種類によって変わってきます。

これは、ちょっと面倒ですよね。
「このデータベースには、このやり方で接続して~。こっちのデータベースは、このやり方か」のように、データベースの種類によって、やり方を変えなくてはいけません。

そこで登場するのがODBCです。

プログラムをODBC経由でデータベースに接続するようにすると、データベースごとの個性を(あまり)気にしなくて良くなります。
それぞれの個性は通訳であるODBCさんが(ある程度)吸収してくれるからです。

ODBC9

ODBCのメリットは、使う側がデータベースの違いをあまり意識しなくて済む点でしょう。
逆にデメリットは、使用できるのが汎用的な機能に限定されるので、データベース固有のテクニックを使いたいときに哀しい結果になるかもしれないことです。

ちなみに、説明を分かりやすくするために「データベース」と表現していますが、正確には「リレーショナルデータベースマネジメントシステム(RDBMS)」です。
違いを意識する必要に迫られる機会は、あまり無いと思いますけどね。

なお、ODBC接続をやるときは

1.どの種類の
2.どのデータベースに


接続するかの情報が必要です。
例えば

SQL Serverの「test_db」という名前のデータベースに接続する

のような情報ですね。

この情報はあらかじめ用意しておき、識別用の名前DSNを付けておきます。
仮に、上記の設定に対して「設定ぴよ」という名前を付けたとしましょう。

プログラムからは「test_db」ではなく「設定ぴよ」という名前を指定する形で、接続するデータベースを指定します。
「設定ぴよ」を指定すれば、SQL Serverの「test_db」に接続しに行きますよ。

これがODBCを使った接続の一般的なやり方です。

1.どの種類のどのデータベースに接続するかを指定する
2.「1」に名前を付けておく
3.プログラムからは「2」で決めた名前を指定する形で、接続先のデータベースを指定する


の流れですね。
「1」と「2」が事前作業で「3」が実際にプログラムに書く内容です。

ついでの補足として、事前作業の「1」と「2」は、Windows管理ツールODBC データ ソース アドミニストレーター」で設定します。
気が向いたら、併せて覚えてあげてください。


image piyo2

一言でまとめるよ

まぁ「ODBC」って単語が出てきたら「マイクロソフトさんが作った、データベースとやり取りするための通訳なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像026
書籍画像024

おまけ

■訳してみるよ

「ODBC」は「Open Database Connectivity(オープン・データベース・コネクティビティ)」の略です。
「open(オープン)」の意味は「開く」とか「開かれている」とか「始める」とかです。
「data(データ)」の意味は「資料」とか「知識」とか「情報」とかです。
「base(ベース)」の意味は「基地」とか「土台」とかです。
「connectivity(コネクティビティ)」の意味は「接続性」とかですが、今回は「接続するやつ」と解釈してください。
何となく くっつけると

開けた情報の基地に接続するやつ

となります。


■違いの分かるピヨピヨ





書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
AI用語図鑑 ビジネス・開発・試験対策に使える厳選キーワード256
ソフトウェア開発現場の「失敗」集めてみた。 42の失敗事例で学ぶチーム開発のうまい進めかた