OracleCommand.Parameters プロパティ
アセンブリ: System.Data.OracleClient (system.data.oracleclient.dll 内)

SQL ステートメントまたはストアド プロシージャのパラメータ。既定値は空のコレクションです。

CommandType プロパティを StoredProcedure に設定したときは、CommandText プロパティをストアド プロシージャ名に設定する必要があります。ストアド プロシージャ名に特殊文字が含まれている場合は、エスケープ文字構文を使用する必要があることがあります。Execute メソッドの 1 つを呼び出すと、コマンドがこのストアド プロシージャを実行します。
.NET Framework Oracle 用データ プロバイダでは、CommandType.Text の OracleCommand が呼び出す SQL ステートメントにパラメータを渡すための疑問符 (?) プレースホルダがサポートされていません。この場合は、名前付きパラメータを使用する必要があります。次に例を示します。
SELECT * FROM Customers WHERE CustomerID = :pCustomerID
CommandType.Text の OracleCommand で呼び出される SQL ステートメントで名前付きパラメータを使用する場合は、パラメータ名の前にコロン (:) を付ける必要があります。ただし、ストアド プロシージャア、またはコードの別の場所で名前付きパラメータを参照する場合 (Parameters プロパティに OracleParameter オブジェクトを追加する場合など) は、名前付きパラメータの前にコロン (:) を付けないでください。.NET Framework Oracle 用データ プロバイダは自動的にコロンを付与します。

OracleCommand を作成し、そのパラメータを表示する例を次に示します。この例では、OracleConnection、SQL SELECT ステートメントのクエリ文字列、および OracleParameter オブジェクトの配列がメソッドに渡されます。
Public Sub CreateOracleCommand(ByVal connection As OracleConnection, _ ByVal queryString As String, ByVal prmArray() As OracleParameter) Dim command As New OracleCommand(queryString, connection) command.CommandText = _ "SELECT * FROM Emp WHERE Job = :pJob AND Sal = :pSal" Dim j As Integer For j = 0 To prmArray.Length - 1 command.Parameters.Add(prmArray(j)) Next j Dim message As String = "" Dim i As Integer For i = 0 To command.Parameters.Count - 1 message += command.Parameters(i).ToString() + ControlChars.Cr Next i Console.WriteLine(message) Dim reader As OracleDataReader = command.ExecuteReader While reader.Read Console.WriteLine(reader.GetValue(0)) End While End Sub
public void CreateOracleCommand(OracleConnection connection, string queryString, OracleParameter[] myParamArray) { OracleCommand command = new OracleCommand(queryString, connection); command.CommandText = "SELECT * FROM Emp WHERE Job = :pJob AND Sal = :pSal"; for (int j = 0; j < myParamArray.Length; j++) command.Parameters.Add(myParamArray[j]); string message = ""; for (int i = 0; i < command.Parameters.Count; i++) message += command.Parameters[i].ToString() + "\n"; Console.WriteLine(message); using (OracleDataReader row = command.ExecuteReader()) { while(row.Read()) { Console.WriteLine(row.GetValue(0)); } } }

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からOracleCommand.Parameters プロパティを検索する場合は、下記のリンクをクリックしてください。

- OracleCommand.Parameters プロパティのページへのリンク