.NET Framework 類別庫
OracleCommand.Parameters 屬性

取得 OracleParameterCollection

命名空間: System.Data.OracleClient
組件: System.Data.OracleClient (在 system.data.oracleclient.dll 中)

語法

Visual Basic (宣告)
Public ReadOnly Property Parameters As OracleParameterCollection
Visual Basic (使用方式)
Dim instance As OracleCommand
Dim value As OracleParameterCollection

value = instance.Parameters
C#
public OracleParameterCollection Parameters { get; }
C++
public:
property OracleParameterCollection^ Parameters {
    OracleParameterCollection^ get ();
}
J#
/** @property */
public OracleParameterCollection get_Parameters ()
JScript
public function get Parameters () : OracleParameterCollection

屬性值

SQL 陳述式或預存程序的參數。預設值為空集合。
備註

CommandType 屬性設定為 StoredProcedure 時,應將 CommandText 屬性設定為預存程序的名稱。如果預存程序的名稱包含任何特殊字元,則使用者可能需要使用逸出字元語法。當您呼叫其中一個 Execute 方法時,命令會執行這個預存程序。

.NET Framework Data Provider for Oracle 不支援問號 (?) 的替代符號 (Placeholder) 以供傳遞參數至 CommandType.TextOracleCommand 所呼叫的 SQL 陳述式。在這種情況下,必須使用具名參數。例如:

SELECT * FROM Customers WHERE CustomerID = :pCustomerID

在由 CommandType.TextOracleCommand 呼叫的 SQL 陳述式中使用具名參數時,必須在參數名稱之前加上冒號 (:)。然而,在預存程序中或在程式碼的其他地方參考具名參數時 (例如,將 OracleParameter 物件加入 Parameters 屬性時),請不要在具名參數前面加上冒號 (:)。因為 .NET Framework Data Provider for Oracle 會自動加上冒號。

範例

下列範例會建立 OracleCommand,並顯示其參數。若要完成這項作業,則方法會傳遞 OracleConnection、查詢字串 (即為 SQL SELECT 陳述式) 和 OracleParameter 物件的陣列。

Visual Basic
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
C#
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 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱系統需求一節的內容。

版本資訊

.NET Framework

支援版本:2.0、1.1
請參閱

標記 :


Page view tracker