OracleCommand.Parameters 屬性

定義

C#
public System.Data.OracleClient.OracleParameterCollection Parameters { get; }

屬性值

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

範例

下列範例會 OracleCommand 建立 並顯示其參數。 若要達成此目的,方法會傳遞 、 OracleConnectionSQL SELECT 語句的查詢字串,以及對象的陣列 OracleParameter

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));
        }
    }
}

備註

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

.NET Framework Data Provider for Oracle 不支援問號 (?) 占位元,將參數傳遞至 的OracleCommandCommandType.Text所呼叫的 SQL 語句。 在此情況下,必須使用具名參數。 例如:

SELECT * FROM Customers WHERE CustomerID = :pCustomerID  

在 由 的 CommandType.Text呼叫OracleCommand的 SQL 語句中使用具名參數時,您必須在參數名稱前面加上冒號 (:) 。 不過,在預存程式中,或在程式 (代碼中其他位置參考具名參數時,例如,將物件新增 OracleParameterParameters 屬性) 時,請勿在具名參數前面加上冒號 (:) 。 .NET Framework Oracle 的數據提供者會自動提供冒號。

適用於

產品 版本
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

另請參閱