ヘッダーをスキップ

Oracle® Data Provider for .NET開発者ガイド
リリース9.2.0.4

部品番号 B13807-01
Go To Table Of Contents
目次
Go To Index
索引

Go to previous page Go to beginning of chapter Go to next page

Oracle.DataAccess.Typesネームスペース(ODP.NET型)、17/19


OracleRefCursorクラス

OracleRefCursorオブジェクトは、OracleのREF CURSORを表します。

クラスの継承

Object

  MarshalRefByObject

    OracleRefCursor

宣言
// C#
public sealed class OracleRefCursor : MarshalRefByObject, IDisposable
スレッド・セーフティ

インスタンス・メソッドではスレッド・セーフティを保証しませんが、すべてのpublic staticメソッドはスレッド・セーフです。

// C#
// Example demonstrates how to use a REF CURSOR as an output parameter
...
// 1. Assume you have a stored procedure called MyPack.MyProc created with
// the following function, which returns 1 REF CURSOR and contains one REF
// CURSOR as an output parameter
//    FUNCTION MyProc (...)
//    BEGIN
//      open p_cursor for select * from multimedia_tab;
//      open p_cursor1 for select * from emp;
//      return (p_cursor);
//    END MyProc;
//    ...
//
// 2. Assume you have a valid connection
// Set the command
OracleCommand cmd = new OracleCommand("MyPack.MyProc", con);
cmd.CommandType = CommandType.StoredProcedure;

// Bind
// select * from multimedia_tab;
OracleParameter p1 = cmd.Parameters.Add("refcursor1", OracleDbType.RefCursor);
p1.Direction = ParameterDirection.ReturnValue;

// select * from emp
OracleParameter p2 = cmd.Parameters.Add("refcursor2", OracleDbType.RefCursor);
p2.Direction = ParameterDirection.Output;

// Execute command
cmd.ExecuteNonQuery();
...
DataReader reader = p1.Value.GetDataReader();
Console.WriteLine("Field count: " + reader.FieldCount);
...

要件

ネームスペース: Oracle.DataAccess.Types

アセンブリ: Oracle.DataAccess.dll

関連項目:

OracleRefCursorのメンバー

OracleRefCursorのメンバーを次の表に示します。

OracleRefCursorのstaticメソッド

OracleRefCursorのstaticメソッドを表5-174に示します。

表5-174 OracleRefCursorのstaticメソッド
メソッド 説明

Equals

Objectから継承されます(オーバーロード)。

OracleRefCursorのプロパティ

OracleRefCursorのプロパティを表5-175に示します。

表5-175 OracleRefCursorのプロパティ
プロパティ 説明

Connection

REF CURSORデータのフェッチに使用されるOracleConnectionを参照します。

OracleRefCursorのインスタンス・メソッド

OracleRefCursorのインスタンス・メソッドを表5-176に示します。

表5-176 OracleRefCursorのインスタンス・メソッド
メソッド 説明

Dispose

OracleRefCursorオブジェクトによって割り当てられたリソースを破棄します。

Equals

Objectから継承されます(オーバーロード)。

GetDataReader

REF CURSORに対するOracleDataReaderオブジェクトを返します。

GetHashCode

Objectから継承されます。

GetType

Objectから継承されます。

ToString

Objectから継承されます。

関連項目:

OracleRefCursorのstaticメソッド

OracleRefCursorのstaticメソッドを表5-177に示します。

表5-177 OracleRefCursorのstaticメソッド
メソッド 説明

Equals

Objectから継承されます(オーバーロード)。

関連項目:

OracleRefCursorのプロパティ

OracleRefCursorのプロパティを表5-178に示します。

表5-178 OracleRefCursorのプロパティ
プロパティ 説明

Connection

REF CURSORデータのフェッチに使用されるOracleConnectionを参照します。

関連項目:

Connection

このプロパティは、REF CURSORデータのフェッチに使用されるOracleConnectionを参照します。

宣言
// C#
public OracleConnection Connection {get;}
プロパティ値

OracleConnection

例外

ObjectDisposedException: オブジェクトがすでに破棄されています。

備考

このプロパティは、設定されるとREF CURSORにバインドされます。OracleRefCursorオブジェクトがコンストラクタによって作成された後、このプロパティは最初はnullになります。OracleRefCursorオブジェクトは、コマンドの実行後にREF CURSORにバインドできます。

接続がクローズされるか、接続プールに返される場合、OracleRefCursorは未初期化状態になり、ここから操作を実行することはできません。ただし、未初期化状態のOracleRefCursorを別のREF CURSORに再割当てすることはできます。

関連項目:

OracleRefCursorのインスタンス・メソッド

OracleRefCursorのインスタンス・メソッドを表5-179に示します。

表5-179 OracleRefCursorのインスタンス・メソッド
メソッド 説明

Dispose

OracleRefCursorオブジェクトによって割り当てられたリソースを破棄します。

Equals

Objectから継承されます(オーバーロード)。

GetDataReader

REF CURSORに対するOracleDataReaderオブジェクトを返します。

GetHashCode

Objectから継承されます。

GetType

Objectから継承されます。

ToString

Objectから継承されます。

関連項目:

Dispose

このインスタンス・メソッドは、OracleRefCursorオブジェクトによって割り当てられたリソースを破棄します。

宣言
// C#
public void Dispose();
実装

IDisposable

備考

オブジェクトは、破棄後に再利用することはできません。

Dispose()がコールされると、OracleRefCursorのオブジェクトは未初期化状態になります。引き続きアクセスできるプロパティもありますが、その値は保証されない場合があります。リソースは解放されているため、メソッドのコールにより例外が発生することがあります。

関連項目:

GetDataReader

このインスタンス・メソッドは、REF CURSORに対するOracleDataReaderオブジェクトを返します。

宣言
// C#
public OracleDataReader GetDataReader();
戻り値

OracleDataReader

備考

OracleDataReaderを使用して、REF CURSORから行をフェッチできます。

関連項目:


Go to previous page Go to beginning of chapter Go to next page
Oracle
Copyright © 2002, 2003 Oracle Corporation.

All Rights Reserved.
Go To Table Of Contents
目次
Go To Index
索引