ヘッダーをスキップ
Oracle® Data Provider for .NET開発者ガイド
12c リリース1(12.1)
B72971-07
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

OracleParameterCollectionクラス

OracleParameterCollectionクラスは、OracleCommandオブジェクトに関連するすべてのパラメータと、これらのパラメータのDataSet列へのマッピングのコレクションを表します。

クラスの継承

System.Object

  System.MarshalByRefObject

    System.Data.Common.DbParameterCollection

      Oracle.DataAccess.Client.OracleParameterCollection

宣言

// C#
public sealed class OracleParameterCollection : DbParameterCollection, 
    IDataParameterCollection, IList, ICollection, IEnumerable

要件

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

スレッド安全性

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

備考

OracleParameterCollectionに追加されたOracleParameterの位置は、SQL文におけるバインディングの位置です。位置は0ベースであり、位置に基づくバインディングにのみ使用されます。名前付きのバインディングが使用されている場合、OracleParameterCollectionOracleParameterの位置は無視されます。

// C#
 
using System;
using System.Data;
using Oracle.DataAccess.Client; 
 
class OracleParameterCollectionSample
{
  static void Main()
  {
    string constr = "User Id=scott;Password=tiger;Data Source=oracle";
    OracleConnection con = new OracleConnection(constr);
    con.Open();
 
    OracleParameter[] prm = new OracleParameter[3];
 
    // Create OracleParameter objects through OracleParameterCollection
    OracleCommand cmd = con.CreateCommand();
 
    cmd.CommandText = "select max(empno) from emp";
    int maxno = int.Parse(cmd.ExecuteScalar().ToString());
 
    prm[0] = cmd.Parameters.Add("paramEmpno", OracleDbType.Decimal, 
      maxno + 10, ParameterDirection.Input);
    prm[1] = cmd.Parameters.Add("paramEname", OracleDbType.Varchar2, 
      "Client", ParameterDirection.Input);
    prm[2] = cmd.Parameters.Add("paramDeptNo", OracleDbType.Decimal, 
      10, ParameterDirection.Input);
    cmd.CommandText = 
      "insert into emp(empno, ename, deptno) values(:1, :2, :3)";
    cmd.ExecuteNonQuery();
 
    Console.WriteLine("Record for employee id {0} has been inserted.", 
      maxno + 10);
 
    // Remove all parameters from OracleParameterCollection
    cmd.Parameters.Clear();
 
    prm[0].Dispose();
    prm[1].Dispose();
    prm[2].Dispose();
    cmd.Dispose();
 
    con.Close();
    con.Dispose();
  }
}

OracleParameterCollectionメンバー

OracleParameterCollectionメンバーは、次の各表にリストしています。

OracleParameterCollection静的メソッド

OracleParameterCollection静的メソッドを、表6-103にリストします。

表6-103 OracleParameterCollection静的メソッド

メソッド 説明

Equals

System.Objectからの継承(オーバーロード)


OracleParameterCollectionプロパティ

OracleParameterCollectionプロパティを、表6-104にリストします。

表6-104 OracleParameterCollectionプロパティ

プロパティ 説明

Count

コレクション内のOracleParameterの数を指定します

Item

OracleParameterオブジェクトを取得および設定します(オーバーロード)


OracleParameterCollectionパブリック・メソッド

OracleParameterCollectionパブリック・メソッドを、表6-105にリストします。

表6-105 OracleParameterCollectionパブリック・メソッド

パブリック・メソッド 説明

Add

オブジェクトをコレクションに追加します(オーバーロード)

AddRange


OracleParameterCollectionの終わりに要素が追加されます。

Clear

すべてのOracleParameterオブジェクトをコレクションから削除します

Contains

オブジェクトがコレクション内に存在するかどうかを示します(オーバーロード)

CopyTo

指定されたindexから指定されたarrayまで、コレクションからOracleParameterオブジェクトをコピーします

CreateObjRef

System.MarshalByRefObjectからの継承

Equals

System.Objectからの継承(オーバーロード)

GetHashCode

System.Objectからの継承

GetLifetimeService

System.MarshalByRefObjectからの継承

GetType

System.Objectからの継承

InitializeLifetimeService

System.MarshalByRefObjectからの継承

IndexOf

コレクション内のオブジェクトのindexを戻します(オーバーロード)

Insert

指定されたOracleParameterを指定されたindexにあるコレクションに挿入します

Remove

コレクションからオブジェクトを削除します

RemoveAt

位置によりコレクションからオブジェクトを削除します(オーバーロード)

ToString

System.Objectからの継承


OracleParameterCollection静的メソッド

OracleParameterCollection静的メソッドを、表6-106にリストします。

表6-106 OracleParameterCollection静的メソッド

メソッド 説明

Equals

System.Objectからの継承(オーバーロード)


OracleParameterCollectionプロパティ

OracleParameterCollectionプロパティを、表6-107にリストします。

表6-107 OracleParameterCollectionプロパティ

プロパティ 説明

Count

コレクション内のOracleParameterの数を指定します

Item

OracleParameterオブジェクトを取得および設定します(オーバーロード)


Count

このプロパティでは、コレクション内のOracleParameterオブジェクトの数が指定されます。

宣言

// C#
public override int Count {get;}

プロパティ値

OracleParameterオブジェクトの数

実装

ICollection

備考

デフォルト = 0

Item

Itemでは、OracleParameterオブジェクトが取得および設定されます。

オーバーロード・リスト:

  • Item[int]

    このプロパティでは、parameterIndexで指定された索引にあるOracleParameterオブジェクトが取得および設定されます。

  • Item[string]

    このプロパティでは、parameterNameにより指定されたパラメータ名を使用して、OracleParameterオブジェクトが取得および設定されます。

Item[int]

このプロパティでは、parameterIndexで指定された索引にあるOracleParameterオブジェクトが取得および設定されます。

宣言

// C#
public object Item[int parameterIndex] {get; set;}

プロパティ値

オブジェクト

実装

IList

例外

IndexOutOfRangeException - 指定された索引は存在しません。

備考

OracleParameterCollectionクラスは、ゼロベースの索引です。

Item[string]

このプロパティでは、parameterNameにより指定されたパラメータ名を使用して、OracleParameterオブジェクトが取得および設定されます。

宣言

// C#
public OracleParameter Item[string parameterName] {get; set;};

プロパティ値

OracleParameter

実装

IDataParameterCollection

例外

IndexOutOfRangeException - 指定されたパラメータ名は存在しません。

OracleParameterCollectionパブリック・メソッド

OracleParameterCollectionパブリック・メソッドを、表6-108にリストします。

表6-108 OracleParameterCollectionパブリック・メソッド

パブリック・メソッド 説明

Add

オブジェクトをコレクションに追加します(オーバーロード)

AddRange


OracleParameterCollectionの終わりに要素が追加されます。

Clear

すべてのOracleParameterオブジェクトをコレクションから削除します

Contains

オブジェクトがコレクション内に存在するかどうかを示します(オーバーロード)

CopyTo

指定されたindexから指定されたarrayまで、コレクションからOracleParameterオブジェクトをコピーします

CreateObjRef

System.MarshalByRefObjectからの継承

Equals

System.Objectからの継承(オーバーロード)

GetHashCode

System.Objectからの継承

GetLifetimeService

System.MarshalByRefObjectからの継承

GetType

System.Objectからの継承

InitializeLifetimeService

System.MarshalByRefObjectからの継承

IndexOf

コレクション内のオブジェクトのindexを戻します(オーバーロード)

Insert

指定されたOracleParameterを指定されたindexにあるコレクションに挿入します

Remove

コレクションからオブジェクトを削除します

RemoveAt

位置によりコレクションからオブジェクトを削除します(オーバーロード)

ToString

System.Objectからの継承


Add

Addでは、オブジェクトがコレクションに追加されます。

オーバーロード・リスト:

Add(object)

このメソッドでは、指定されたオブジェクトがコレクションに追加されます。

宣言

// C#
public override int Add(object obj);

パラメータ

  • obj

    指定されたオブジェクト

戻り値

新規OracleParameterが追加される索引

実装

IList

備考

InvalidCastException - 指定されたobjは、OracleParameterオブジェクトにキャストできません。

Add(OracleParameter)

このメソッドでは、指定されたOracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(OracleParameter paramObj);

パラメータ

  • paramObj

    指定されたOracleParameterオブジェクト

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

Add(string, object)

このメソッドでは、指定された名前とオブジェクト値を使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, object val);

パラメータ

  • name

    パラメータ名

  • val

    OracleParameter

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

Add(string, OracleDbType)

このメソッドでは、指定された名前とデータベース型を使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, OracleDbType dbType);

パラメータ

  • name

    パラメータ名

  • dbType

    OracleParameterのデータ型

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

Add(string, OracleDbType, ParameterDirection)

このメソッドでは、指定された名前、データベース型およびディレクションを使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, OracleDbType dbType,
   ParameterDirection direction);

パラメータ

  • name

    パラメータ名

  • dbType

    OracleParameterのデータ型

  • direction

    OracleParameterディレクション

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

Add(string, OracleDbType, object, ParameterDirection)

このメソッドでは、指定された名前、データベース型、パラメータ値およびディレクションを使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, OracleDbType dbType, object val,
    ParameterDirection dir);

パラメータ

  • name

    パラメータ名

  • dbType

    OracleParameterのデータ型

  • val

    OracleParameter

  • dir

    ParameterDirection

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

// C#
 
using System;
using System.Data;
using Oracle.DataAccess.Client;
 
class AddSample
{
  static void Main()
  {
    OracleCommand cmd = new OracleCommand();
 
    // Add parameter to the OracleParameterCollection
    OracleParameter prm = cmd.Parameters.Add(
      "MyParam", OracleDbType.Decimal, 1, ParameterDirection.Input);
 
    // Prints "cmd.Parameters.Count = 1"
    Console.WriteLine("cmd.Parameters.Count = " + cmd.Parameters.Count);
 
    prm.Dispose();
    cmd.Dispose();
  }
}

Add(string, OracleDbType, int, object, ParameterDirection)

このメソッドでは、指定された名前、データベース型、サイズ、パラメータ値およびディレクションを使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, OracleDbType dbType, int size, 
    object val, ParameterDirection dir;

パラメータ

  • name

    パラメータ名

  • dbType

    OracleParameterのデータ型

  • size

    OracleParameterのサイズ

  • val

    OracleParameter

  • dir

    ParameterDirection

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

Add(string, OracleDbType, int)

このメソッドでは、指定された名前、データベース型およびサイズを使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, OracleDbType dbType, int size);

パラメータ

  • name

    パラメータ名

  • dbType

    OracleParameterのデータ型

  • size

    OracleParameterのサイズ

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class AddSample
{
  static void Main()
  {
    OracleCommand cmd = new OracleCommand();
 
    // Add parameter to the OracleParameterCollection
    OracleParameter prm = cmd.Parameters.Add(
      "MyParam", OracleDbType.Varchar2, 10);
 
    // Prints "cmd.Parameters.Count = 1"
    Console.WriteLine("cmd.Parameters.Count = " + cmd.Parameters.Count);
 
    prm.Dispose();
    cmd.Dispose();
  }
}

Add (string, OracleDbType, int, string)

このメソッドでは、指定された名前、データベース型、サイズおよびソース列を使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, OracleDbType dbType, int size, 
    string srcColumn);

パラメータ

  • name

    パラメータ名

  • dbType

    OracleParameterのデータ型

  • size

    OracleParameterのサイズ

  • srcColumn

    ソース列の名前

戻り値

OracleParameter

Add(string, OracleDbType, int, ParameterDirection, bool, byte, byte, string, DataRowVersion, object)

このメソッドでは、指定された名前、データベース・タイプ、サイズ、ディレクション、NULLインジケータ、精度、スケール、ソース列、ソース・バージョンおよびパラメータ値を使用して、OracleParameterオブジェクトがコレクションに追加されます。

宣言

// C#
public OracleParameter Add(string name, OracleDbType dbType, int size,
    ParameterDirection dir, bool isNullable, byte precision, 
    byte scale, string srcColumn, DataRowVersion version, object val);

パラメータ

  • name

    パラメータ名

  • dbType

    OracleParameterのデータ型

  • size

    OracleParameterのサイズ

  • dir

    ParameterDirection

  • isNullable

    parameter値をnullにできるかどうかを指定するインジケータ

  • precision

    parameter値の精度

  • scale

    parameter値のスケール

  • srcColumn

    ソース列の名前

  • version

    DataRowVersion

  • val

    parameter

戻り値

コレクションに追加された新規作成のOracleParameterオブジェクト

例外

ArgumentException - 指定されたvalのタイプは、ODP.NETタイプのValueプロパティのタイプに属しません。

AddRange

このメソッドでは、OracleParameterCollectionの終わりに要素が追加されます。

宣言

// C#
public override void AddRange(Array paramArray );

パラメータ

paramArray

OracleParameterオブジェクトの配列。

例外

ArgumentNullException - 入力パラメータはNullです。

Clear

このメソッドでは、すべてのOracleParameterオブジェクトがコレクションから削除されます。

宣言

// C#
public override void Clear();

実装

IList

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class ClearSample
{
  static void Main()
  {
    OracleCommand cmd = new OracleCommand();
 
    // Add parameter to the OracleParameterCollection
    OracleParameter prm = cmd.Parameters.Add("MyParam", OracleDbType.Decimal);
 
    // Prints "cmd.Parameters.Count = 1"
    Console.WriteLine("cmd.Parameters.Count = " + cmd.Parameters.Count);
 
    // Clear all parameters in the OracleParameterCollection
    cmd.Parameters.Clear();
 
    // Prints "cmd.Parameters.Count = 0"
    Console.WriteLine("cmd.Parameters.Count = " + cmd.Parameters.Count);
 
    prm.Dispose();
    cmd.Dispose();
  }
}

Contains

Containsは、指定されたオブジェクトがコレクション内に存在するかどうかを示します。

オーバーロード・リスト:

  • Contains(object)

    このメソッドは、指定されたオブジェクトがコレクション内に存在するかどうかを示します。

  • Contains(string)

    このメソッドは、指定された文字列を使用して、OracleParameterオブジェクトがコレクション内に存在するかどうかを示します。

Contains(object)

このメソッドは、指定されたオブジェクトがコレクション内に存在するかどうかを示します。

宣言

// C#
public override bool Contains(object obj)

パラメータ

  • obj

    オブジェクト

戻り値

指定されたOracleParameterがコレクション内にあるかどうかを示すbool

実装

IList

例外

InvalidCastException - 指定されたobjは、OracleParameterオブジェクトではありません。

備考

コレクションにOracleParameterオブジェクトが含まれる場合はtrueを戻し、それ以外の場合はfalseを戻します。

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class ContainsSample
{
  static void Main()
  {
    OracleCommand cmd = new OracleCommand();
 
    // Add parameter to the OracleParameterCollection
    OracleParameter prm1 = cmd.Parameters.Add("MyParam", OracleDbType.Decimal);
 
    // Check if the OracleParameterCollection contains prm1
    bool bContains = cmd.Parameters.Contains(prm1);
 
    // Prints "bContains = True"
    Console.WriteLine("bContains = " + bContains);
 
    OracleParameter prm2 = new OracleParameter();
 
    // Check if the OracleParameterCollection contains prm2
    bContains = cmd.Parameters.Contains(prm2);
 
    // Prints "bContains = False"
    Console.WriteLine("bContains = " + bContains);
 
    prm1.Dispose();
    prm2.Dispose();
    cmd.Dispose();
  }
}

Contains(string)

このメソッドは、指定された文字列を使用して、OracleParameterオブジェクトがコレクション内に存在するかどうかを示します。

宣言

// C#
public override bool Contains(string name);

パラメータ

  • name

    OracleParameterオブジェクトの名前

戻り値

指定されたパラメータ名を持つOracleParameterオブジェクトがコレクションに含まれる場合はtrueを戻し、それ以外の場合はfalseを戻します。

実装

IDataParameterCollection

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class ContainsSample
{
  static void Main()
  {
    OracleCommand cmd = new OracleCommand();
 
    // Add parameter to the OracleParameterCollection
    OracleParameter prm = cmd.Parameters.Add("MyParam", OracleDbType.Decimal);
 
    // Check if the OracleParameterCollection contains "MyParam"
    bool bContains = cmd.Parameters.Contains("MyParam");
 
    // Prints "bContains = True"
    Console.WriteLine("bContains = " + bContains);
 
    // Check if the OracleParameterCollection contains "NoParam"
    bContains = cmd.Parameters.Contains("NoParam");
 
    // Prints "bContains = False"
    Console.WriteLine("bContains = " + bContains);
 
    prm.Dispose();
    cmd.Dispose();
  }
}

CopyTo

このメソッドでは、指定されたindexから指定されたarrayまで、コレクションからOracleParameterオブジェクトがコピーされます。

宣言

// C#
public override void CopyTo(Array array, int index);

パラメータ

  • array

    指定された配列

  • index

    配列インデックス

実装

ICollection

IndexOf

IndexOfでは、コレクション内のOracleParameterオブジェクトの索引が戻されます。

オーバーロード・リスト:

  • IndexOf(object)

    このメソッドでは、コレクション内のOracleParameterオブジェクトの索引が戻されます。

  • IndexOf(String)

    このメソッドでは、コレクション内の指定された名前を持つOracleParameterオブジェクトのindexが戻されます。

IndexOf(object)

このメソッドでは、コレクション内のOracleParameterオブジェクトの索引が戻されます。

宣言

// C#
public override int IndexOf(object obj);

パラメータ

  • obj

    指定されたオブジェクト

戻り値

コレクション内のOracleParameterオブジェクトの索引が戻されます。

実装

IList

例外

InvalidCastException - 指定されたobjは、OracleParameterオブジェクトにキャストできません。

備考

コレクション内の指定されたOracleParameter objindexが戻されます。

IndexOf(String)

このメソッドでは、コレクション内の指定された名前を持つOracleParameterオブジェクトのindexが戻されます。

宣言

// C#
public override int IndexOf(String name);

パラメータ

  • name

    パラメータ名

戻り値

コレクション内の指定されたOracleParameterindexが戻されます。

実装

IDataParameterCollection

Insert

このメソッドでは、指定されたOracleParameterオブジェクトが、指定されたindexにあるコレクションに挿入されます。

宣言

// C#
public override void Insert(int index, object obj);

パラメータ

  • index

    指定された索引

  • obj

    OracleParameterオブジェクト

実装

IList

備考

指定されたobjOracleParameterオブジェクトにキャストできない場合、InvalidCastExceptionが表示されます。

Remove

このメソッドでは、指定されたOracleParameterがコレクションから削除されます。

宣言

// C#
public override void Remove(object obj);

パラメータ

  • obj

    削除するオブジェクトを指定

実装

IList

例外

InvalidCastException - 指定されたobjは、OracleParameterオブジェクトにキャストできません。

// C#
 
using System;
using Oracle.DataAccess.Client;
 
class RemoveSample
{
  static void Main()
  {
    OracleCommand cmd = new OracleCommand();
 
    // Add 2 parameters to the OracleParameterCollection
    OracleParameter prm1 = cmd.Parameters.Add("MyParam1", OracleDbType.Decimal);
    OracleParameter prm2 = cmd.Parameters.Add("MyParam2", OracleDbType.Decimal);
 
    // Prints "cmd.Parameters.Count = 2"
    Console.WriteLine("cmd.Parameters.Count = " + cmd.Parameters.Count);
 
    // Remove the 1st parameter from the OracleParameterCollection
    cmd.Parameters.Remove(prm1);
 
    // Prints "cmd.Parameters.Count = 1"
    Console.WriteLine("cmd.Parameters.Count = " + cmd.Parameters.Count);
 
    // Prints "cmd.Parameters[0].ParameterName = MyParam2"
    Console.WriteLine("cmd.Parameters[0].ParameterName = " + 
      cmd.Parameters[0].ParameterName);
 
    prm1.Dispose();
    prm2.Dispose();
    cmd.Dispose();
  }
}

RemoveAt

RemoveAtでは、位置によりOracleParameterオブジェクトがコレクションから削除されます。

オーバーロード・リスト:

  • RemoveAt(int)

    このメソッドでは、指定された索引の位置にあるOracleParameterオブジェクトがコレクションから削除されます。

  • RemoveAt(String)

    このメソッドでは、指定された名前のOracleParameterオブジェクトがコレクションから削除されます。

RemoveAt(int)

このメソッドでは、指定された索引の位置にあるOracleParameterオブジェクトがコレクションから削除されます。

宣言

// C#
public override void RemoveAt(int index);

パラメータ

  • index

    OracleParameterが削除される索引を指定

実装

IList

RemoveAt(String)

このメソッドでは、指定された名前のOracleParameterオブジェクトがコレクションから削除されます。

宣言

// C#
public override void RemoveAt(String name);

パラメータ

  • name

    コレクションから削除されるOracleParameterオブジェクトの名前

実装

IDataParameterCollection