あまり、知られていない事実。
SQL Server 7.0/2000になってもEnterprise ManagerはODBCが使われています。UDAを提唱しているマイクロソフト様がなぜにOLE DBでなくてODBCを使い続けているのか、・・・。どうでもいいですが、ODBCのトレースログをオンにしたままEnterprise Managerを実行すればパフォーマンスが落ちるのと、途中経過のODBC呼び出しが全て見られるのでODBCアプリケーションだという事実がわかります。
理由はよくわかりませんが、メタデータの取得について、OLE DBよりもODBCの方がやりやすかったのか、単に安定したコードだから書き換えたくなかったのか・・・。SQL Serverの開発担当者に聞かなければ理由はわかりませんが、マイクロソフト様の言っていることとやっていることの矛盾がここにあるというわけです。SQL Server 7.0でOLE DBを導入したのに、Enterprise ManagerはODBC・・・。たいていのユーザには実害はないですが、ODBCヘビーユーザにはバレバレですよ・・・。
かくいう私は、ODBCでメタデータを取得するプロジェクトに関わったことがあるので、そんなに気にしていませんが、「ODBCは死んだ!」と思っている人。そうじゃありませんよ。SQL Server 2005ではどうなっているか未確認ですが・・・。近日中に調べようかと思っています。ん?そんな時間あるのか>自分