プライマリ・コンテンツに移動

Oracle® Data Provider for .NET開発者ガイド ODAC 12.2c リリース1 (12.2.0.1) for Microsoft Windows E88311-03 |
| 目次 | 索引

前 | 次 |

# OracleCommandクラス

`OracleCommand`オブジェクトは、SQLコマンド、ストアド・プロシージャまたは表の名前を表します。`OracleCommand`オブジェクトは、要求を作成してこれをデータベースに渡す処理を担当します。結果が戻される場合、`OracleCommand`は、`OracleDataReader`、.NET `XmlReader`、.NET `Stream`、スカラー値または出力パラメータとして結果を戻す処理を担当します。

クラスの継承

`System.Object`

`System.MarshalByRefObject`

`System.ComponentModel.Component`

`System.Data.Common.DbCommand`

`Oracle.DataAccess.Client.OracleCommand`

宣言

    // C#
    public sealed class OracleCommand : DbCommand, ICloneable

要件

プロバイダ | ODP.NET管理対象外ドライバ | ODP.NET管理対象ドライバ
--- | --- | ---
アセンブリ | `Oracle.DataAccess.dll` | `Oracle.ManagedDataAccess.dll`
ネームスペース | `Oracle.DataAccess.Client` | `Oracle.ManagedDataAccess.Client`
.NET Framework | 3.5, 4.5, 4.6, 4.7 | 4.5, 4.6, 4.7

スレッド安全性

パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。

備考

`OracleCommand`からトランザクション関連文を実行しても、現行のローカル・トランザクション(存在する場合)を表す`OracleTransaction`オブジェクトの状態に反映されないため、お薦めできません。

`ExecuteXmlReader`、`ExecuteStream`および`ExecuteToStream`メソッドは、XML操作でのみサポートされています。

`ExecuteReader`および`ExecuteScalar`メソッドは、XML操作ではサポートされていません

オープン・サーバー・カーソルの数を最小限にするには、`OracleCommand`オブジェクトを明示的に処理する必要があります。

例

    // C#

    using System;
    using System.Data;
    using Oracle.DataAccess.Client;

    class OracleCommandSample
    {
      static void Main()
      {
        string constr = "User Id=scott;Password=tiger;Data Source=oracle";
        OracleConnection con = new OracleConnection(constr);
        con.Open();

        string cmdQuery = "select ename, empno from emp";

        // Create the OracleCommand
        OracleCommand cmd = new OracleCommand(cmdQuery);

        cmd.Connection = con;
        cmd.CommandType = CommandType.Text;

        // Execute command, create OracleDataReader object
        OracleDataReader reader = cmd.ExecuteReader();

        while (reader.Read())
        {
          // output Employee Name and Number
          Console.WriteLine("Employee Name : " + reader.GetString(0) + " , " +
            "Employee Number : " + reader.GetDecimal(1));
        }

        // Clean up
        reader.Dispose();
        cmd.Dispose();
        con.Dispose();
      }
    }

関連項目:

- Oracle.DataAccess.ClientおよびOracle.ManagedDataAccess.Clientのネームスペース

- OracleCommandメンバー

- OracleCommandコンストラクタ

- OracleCommand静的メソッド

- OracleCommandプロパティ

- OracleCommandパブリック・メソッド