- PR -

OLEDB によるOracleからのデータバインディングについて

1
投稿者投稿内容
駆け出しSE
会議室デビュー日: 2004/09/30
投稿数: 3
投稿日時: 2004-09-30 10:17
はじめまして。
私は、某ソフト会社に勤める会社員です。
今回、ASP.NETを初めて学習するものです。(ASPは、経験有り。)

ASP.NET の(業務用の)学習で、OLEDBを使用して、Oracleに接続し、
DBにアクセスする一連の処理を実装しました。

環境は、次のとおりです。

Webサーバー用環境:(ノートPC)
OS: WindowsXP Pro.
(Webサーバー上で、localhostにてアクセス)
DB:Oracle9i Cliant

開発ツール: VisualStudio.NET 2003
      (.NET FrameWork Ver.1.1)
使用言語:VisualBasic.NET


DBサーバー環境:(デスクトップPC)
OS: Windows2000 Server
DBMS:Oracle9i Database


実装内容:

ASP.NET Webアプリケーション・プロジェクトにて、
OleDbDataAdapter 、OleDbDataSet 及び OleDbConnection を配置して、
DataGrid コンポーネントに、データバインディングを実装しました。

OleDbDataAdapter から OleDbDataSet へFill() するVBコードの処理文で、
次のようなエラーが発生します。
エラーメッセージ:
[OleDbException (0x80040154): エラー情報 : REGDB_E_CLASSNOTREG(0x80040154) がありません。]
[InvalidOperationException: 'OraOLEDB.Oracle.1' プロバイダはローカルのコンピュータに登録されていません。]

ちなみに、OleDbConnection コンポネントに設定されている接続文字列は、
次のとおりです。

Provider="OraOLEDB.Oracle.1";Persist Security Info=False;User ID=kenshu;Data Source="SEIHAN01_SGC-DVSERVER2";Extended Properties=

上記の接続文字列にて、「サーバーエクスプローラ」で、Oracleへの接続確認を
行ったら、正常に接続できました。

今までに行った対処作業:
・Oracle9iのOLDDB のインストール(クライアント側・サーバー側の両方)
・プロジェクトに、「参照の設定」に、「adodb」、「ORAOLEDBlib」、「System.Data.OracleClient」を設定。
・VBコードファイルに、「System.Data.OracleClient」、「System.Data.OleDb」を
インポート。

以上の症状について、どなたかご存知の方がいましたら、
ご教授お願いいたします。

P.S.
万一、OLEDBで正常動作しない場合は、ODBCプロバイダによる実装も
検討しています。

−以上です−
まるく
大ベテラン
会議室デビュー日: 2004/01/09
投稿数: 181
投稿日時: 2004-09-30 12:07
ORACLEをインストールしたフォルダに対する権限の不足と思われます。
REGDB_E_CLASSNOTREGで、この過去ログ検索してみてください。
駆け出しSE
会議室デビュー日: 2004/09/30
投稿数: 3
投稿日時: 2004-09-30 17:55
引用:

まるくさんの書き込み (2004-09-30 12:07) より:
ORACLEをインストールしたフォルダに対する権限の不足と思われます。
REGDB_E_CLASSNOTREGで、この過去ログ検索してみてください。



まるくさん、アドバイスありがとうございました。
過去ログが見つからなかったので、質問が重複してしまったことをお詫びします。

おかげさまで、次の対処で正常にデータバインディングが実行されるようになりました。

・ORACLEをインストールしたフォルダに対する権限(ASPNET)を追加。
・OLEDBプロバイダの接続文字列を修正。

今後ともよろしくお願い致します。
1

スキルアップ/キャリアアップ(JOB@IT)