プロが教える店舗&オフィスのセキュリティ対策術

ADOを利用したデータベース接続についてなのですが
たとえばcsvファイルにアクセスする場合以下の三つのやり方があると思います。

Connectionのopenメソッドに

1.
"Provider=Microsoft.Jet.OLEDB.4.0;...."
とOLEDBプロバイダ名を指定する接続文字列を使う方法

2.
"Driver={Microsoft Text Driver (*.txt; *.csv)}....."
とODBCドライバを指定する接続文字列を使う方法

3..
"DSN=[データソース名]......"
とODBCのデータソース名を指定する方法


この三つの処理の違いがわかりません。
特に2.と3.の違いがまったくわかりません。
どなたか詳しい方、教えていただけませんか?

A 回答 (1件)

細かな話は、参考URLを見ていただくとして、


まず、ODBCと、OLEDBの違いは、インターフェースが違うとところだけです。

歴史的な流れで。

ODBC→OLEDBと進化をしてきたのですが、ODBCがより具体的な指定が必要なのに大して、OLEDBは
より設定が抽象化されているといった解釈でいいのかな?。。と思っております。

もっと簡単にいうと、1のほうが変化に柔軟で
2と3は、変化するごとに、アプリケーションの改修を余儀なくされるといった解釈良いのかな?
OLEDBは、たとえばデータソースが、CSVから、データベースに変わったとしても最小限のアプリケーション改修で済む可能性が高いのですが、ODBCはそうもいかず、根本からアプリケーションを改修する
必要がでる可能性があります。

っていうほど、OLEDBもそんなにうまくはできていないと思いますけどね。。

参考URL:http://www.progress-japan.co.jp/datadirect/techn …
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す