- PR -

.NET Framework Data Provider for Oracleでのデータ更新

1
投稿者投稿内容
否かっぺい
常連さん
会議室デビュー日: 2003/02/10
投稿数: 48
投稿日時: 2003-05-19 19:24
否かっぺいと申します。

C#でWebアプリケーションを構築中です。
.NET Framework Data Provider for Oracleを使ってDataTableに格納した
行を登録・修正・削除したいのですが、方法がわかりません。
どなたかご教授御願い致します。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-05-19 19:52
引用:

否かっぺいさんの書き込み (2003-05-19 19:24) より:

.NET Framework Data Provider for Oracleを使ってDataTableに格納した
行を登録・修正・削除したいのですが、方法がわかりません。


 OleDbを使ったときと同じですよ?OracleXXXの「Oracle」部分を「SQL」なり「OleDb」に読み替えてヘルプを見れば、ほぼいけます。その他、使うために必要な情報などは、ダウンロードしたページからのリンクに書いてあります。
否かっぺい
常連さん
会議室デビュー日: 2003/02/10
投稿数: 48
投稿日時: 2003-05-21 09:29
Jittaさん、ご返答ありがとうございます。
Helpを見て何とかできました。
Transaction関係で悩みましたが、それも何とかうまくいきました。
Helpは解りづらいけど、よく探せばそれらしい事はありますね(^_^;
ありがとうございました。
否かっぺい
常連さん
会議室デビュー日: 2003/02/10
投稿数: 48
投稿日時: 2003-05-21 21:03
便乗質問なんですけど、
.NET Framework Data Provider for Oracleを使用して
パッケージを実行しようとしています。
引数に配列(TYPE typeP1 IS TABLE OF VARCHAR2(10))を使用しているのですが、
オブジェクトは IConvertible を実装しなければなりません。
と、エラーがでて実行できません。
配列なしのパッケージは実行できました。
パラメータに配列を渡すにはどのようにして記述すればよろしいのでしょうか?
どなたかご教授御願いします。
否かっぺい
常連さん
会議室デビュー日: 2003/02/10
投稿数: 48
投稿日時: 2003-05-22 09:29
Jittaさん、ご返答ありがとうございます。

.NET Framework DataProvider for Oracleの
OracleCommandオブジェクトにはArrayBindCountプロパティが
ありませんでした

ODP.NETってOracle9iですよね?
当方、Oracle8i(8.1.7)なのですが
ODP.NETを使用しても問題ないのでしょうか?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-05-22 09:32
引用:

否かっぺいさんの書き込み (2003-05-21 21:03) より:

引数に配列(TYPE typeP1 IS TABLE OF VARCHAR2(10))を使用しているのですが、



 「Oracleクライアントドキュメント」を「pl/sql」で検索すると、『Working with Oracle REF CURSORs』に、こんな言葉を見つけました。
引用:

The PL/SQL TABLE data type is not supported by the Data Provider for Oracle. However, REF CURSORs are more efficient. If you must use a TABLE data type, use the OLE DB .Net Data Provider with MSDAORA.


[てきとー訳]
PL/SQL TABLEデータ型は、Data Provider for Oracleではサポートしていない。しかしながら、REF CURSORsは、もっと有効だ。もし、TABLEデータ型を使わなければならないなら、OLE DB .NETデータプロバイダをMSDAORAとともに使いなさい。
否かっぺい
常連さん
会議室デビュー日: 2003/02/10
投稿数: 48
投稿日時: 2003-05-22 10:10
TABLE型は使えないんですね。。。

パラメータにTABLE型を使わずに別の方法ですることにします。

DBがOracle9iならODP.NETを使うんですけど。。。

ありがとうございました。
1

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