OracleCommand 類別

定義

警告

OracleCommand has been deprecated. http://go.microsoft.com/fwlink/?LinkID=144260

表示要針對資料庫執行的 SQL 陳述式或預存程序 (Stored Procedure)。 此類別無法獲得繼承。

public ref class OracleCommand sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbCommand
public ref class OracleCommand sealed : System::Data::Common::DbCommand, ICloneable
public sealed class OracleCommand : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbCommand
public sealed class OracleCommand : System.Data.Common.DbCommand, ICloneable
[System.Obsolete("OracleCommand has been deprecated. http://go.microsoft.com/fwlink/?LinkID=144260", false)]
public sealed class OracleCommand : System.Data.Common.DbCommand, ICloneable
type OracleCommand = class
    inherit Component
    interface ICloneable
    interface IDbCommand
    interface IDisposable
type OracleCommand = class
    inherit DbCommand
    interface ICloneable
[<System.Obsolete("OracleCommand has been deprecated. http://go.microsoft.com/fwlink/?LinkID=144260", false)>]
type OracleCommand = class
    inherit DbCommand
    interface ICloneable
Public NotInheritable Class OracleCommand
Inherits Component
Implements ICloneable, IDbCommand, IDisposable
Public NotInheritable Class OracleCommand
Inherits DbCommand
Implements ICloneable
繼承
繼承
屬性
實作

範例

下列範例會 ExecuteReader 使用 的 OracleCommandOracleDataReader 方法以及 和 OracleConnection ,從資料表中選取資料列。

public void ReadMyData(string connectionString)
{
    string queryString = "SELECT EmpNo, DeptNo FROM Scott.Emp";
    using (OracleConnection connection = new OracleConnection(connectionString))
    {
        OracleCommand command = new OracleCommand(queryString, connection);
        connection.Open();
        OracleDataReader reader = command.ExecuteReader();
        try
        {
            while (reader.Read())
            {
                Console.WriteLine(reader.GetInt32(0) + ", " + reader.GetInt32(1));
            }
        }
        finally
        {
            // always call Close when done reading.
            reader.Close();
        }
    }
}
Public Sub ReadMyData(ByVal connectionString As String)
    Dim queryString As String = "SELECT EmpNo, DeptNo FROM Scott.Emp"
    Using connection As New OracleConnection(connectionString)
        Dim command As New OracleCommand(queryString, connection)
        connection.Open()
        Dim reader As OracleDataReader = command.ExecuteReader()
        Try
            While reader.Read()
                Console.WriteLine(reader.GetInt32(0) & ", " _
                   & reader.GetInt32(1))
            End While
        Finally
            ' always call Close when done reading.
            reader.Close()
        End Try
    End Using
End Sub

備註

此類型已被取代,將在未來的.NET Framework版本中移除。 如需詳細資訊,請參閱 Oracle 和 ADO.NET

類別 OracleCommand 提供下列方法,以針對資料來源執行命令:

項目 描述
ExecuteReader 執行傳回資料列的命令。
ExecuteOracleNonQuery 針對 Connection 執行 SQL 陳述式,並傳回受影響的資料列數。
ExecuteNonQuery 執行 SQL INSERT、DELETE、UPDATE 和 SET 語句等命令。
ExecuteScalar 例如,從資料庫擷取單一值 (,以.NET Framework資料類型從資料庫擷取匯總) 值。
ExecuteOracleScalar 例如,從資料庫擷取單一值 (匯總值,) 為 Oracle 特定的資料類型。

您可以重設 CommandText 屬性並重複使用 OracleCommand 物件。

如果命令執行會導致嚴重 OracleException ,可能會 OracleConnection 關閉 。 但是,使用者可以再次開啟連線,然後繼續進行。

注意

不同于其他.NET Framework資料提供者中的Command物件, (SQL Server、OLE DB 和 ODBC) , OracleCommand 物件不支援 CommandTimeout 屬性。 設定命令逾時沒有任何作用,且傳回的值一律為零。

建構函式

OracleCommand()
已淘汰.

初始化 OracleCommand 的新執行個體。

OracleCommand(String)
已淘汰.

使用查詢的文字,初始化 OracleCommand 類別的新執行個體。

OracleCommand(String, OracleConnection)
已淘汰.

使用查詢文字和 OracleCommand 物件來初始化 OracleConnection 類別的新執行個體。

OracleCommand(String, OracleConnection, OracleTransaction)
已淘汰.

使用查詢文字、OracleCommand 物件和 OracleConnection 來初始化 OracleTransaction 類別的新執行個體。

屬性

CanRaiseEvents
已淘汰.

取得值,指出元件是否能引發事件。

(繼承來源 Component)
CommandText
已淘汰.

取得或設定要針對資料庫執行的 SQL 陳述式或預存程序。

CommandTimeout
已淘汰.

取得或設定結束執行命令的嘗試並產生錯誤之前的等待時間 (以秒為單位)。

CommandType
已淘汰.

取得或設定值,表示如何解譯 CommandText 屬性。

Connection
已淘汰.

取得或設定 OracleCommand 的這個執行個體所使用的 OracleConnection

Container
已淘汰.

取得包含 IContainerComponent

(繼承來源 Component)
DbConnection
已淘汰.

取得或設定這個 DbConnection 所使用的 DbCommand

(繼承來源 DbCommand)
DbParameterCollection
已淘汰.

取得 DbParameter 物件的集合。

(繼承來源 DbCommand)
DbTransaction
已淘汰.

取得或設定 DbTransaction,此 DbCommand 物件會在其中執行。

(繼承來源 DbCommand)
DesignMode
已淘汰.

取得值,指出 Component 目前是否處於設計模式。

(繼承來源 Component)
DesignTimeVisible
已淘汰.

取得或設定值,指出命令物件是否應該在自訂介面控制項中顯示。

Events
已淘汰.

取得附加在這個 Component 上的事件處理常式清單。

(繼承來源 Component)
Parameters
已淘汰.

取得 OracleParameterCollection

Site
已淘汰.

取得或設定 ComponentISite

(繼承來源 Component)
Transaction
已淘汰.

取得或設定在其中執行 OracleTransactionOracleCommand

UpdatedRowSource
已淘汰.

取得或設定數值,指定 Update 應該如何將命令結果套用到 DataRow

方法

Cancel()
已淘汰.

嘗試取消 OracleCommand 的執行。

Clone()
已淘汰.

建立這個 OracleCommand 物件的複本。

CreateDbParameter()
已淘汰.

建立 DbParameter 物件的新執行個體。

(繼承來源 DbCommand)
CreateObjRef(Type)
已淘汰.

建立包含所有相關資訊的物件,這些資訊是產生用來與遠端物件通訊的所需 Proxy。

(繼承來源 MarshalByRefObject)
CreateParameter()
已淘汰.

建立 OracleParameter 物件的新執行個體。

Dispose()
已淘汰.

釋放 Component 所使用的所有資源。

(繼承來源 Component)
Dispose()
已淘汰.

執行與釋放 (Free)、釋放 (Release) 或重設 Unmanaged 資源相關聯之應用程式定義的工作。

(繼承來源 DbCommand)
Dispose(Boolean)
已淘汰.

釋放 Component 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。

(繼承來源 Component)
Dispose(Boolean)
已淘汰.

釋放 DbCommand 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。

(繼承來源 DbCommand)
DisposeAsync()
已淘汰.

非同步地處置命令物件。

(繼承來源 DbCommand)
Equals(Object)
已淘汰.

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
ExecuteDbDataReader(CommandBehavior)
已淘汰.

針對其連接執行命令,傳回 DbDataReader 可用來存取結果的 。

(繼承來源 DbCommand)
ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)
已淘汰.

提供者應該實作這個方法,以提供 ExecuteReader 多載的非預設實作。

預設實作會叫用同步ExecuteReader()方法,並傳回完成的工作,封鎖呼叫的執行緒。 如果傳遞一個已經被取消的取消語彙基元,預設實作會傳回已取消的工作。 ExecuteReader 擲回的例外狀況會透過傳回的 Task Exception 屬性來傳送。

這個方法會接受可以用來要求提早取消作業的取消語彙基元。 實作可以忽略這項要求。

(繼承來源 DbCommand)
ExecuteNonQuery()
已淘汰.

針對 Connection 執行 SQL 陳述式,並傳回受影響的資料列數。

ExecuteNonQueryAsync()
已淘汰.

的非同步版本 ExecuteNonQuery() ,它會針對其連線物件執行命令,並傳回受影響的資料列數目。

以 CancellationToken.None 叫用 ExecuteNonQueryAsync(CancellationToken)

(繼承來源 DbCommand)
ExecuteNonQueryAsync(CancellationToken)
已淘汰.

這是 ExecuteNonQuery() 的非同步版本。 提供者應該覆寫為適當的實作。 可以選擇性地接受忽略語彙基元。

預設實作會叫用同步ExecuteNonQuery()方法,並傳回完成的工作,封鎖呼叫的執行緒。 如果傳遞一個已經被取消的取消語彙基元,預設實作會傳回已取消的工作。 ExecuteNonQuery() 擲回的例外狀況會透過傳回的工作例外狀況屬性來傳送。

在傳回的工作完成之前,不叫用 DbCommand 物件的其他方法及屬性。

(繼承來源 DbCommand)
ExecuteOracleNonQuery(OracleString)
已淘汰.

針對 Connection 執行 SQL 陳述式,並傳回受影響的資料列數。

ExecuteOracleScalar()
已淘汰.

執行查詢,並傳回查詢當做 Oracle 特定資料型別所傳回的結果集中第一個資料列的第一個資料行。 額外的資料行或資料列都會遭到忽略。

ExecuteReader()
已淘汰.

傳送 CommandTextConnection,並建置 OracleDataReader

ExecuteReader(CommandBehavior)
已淘汰.

傳送 CommandTextConnection,並使用其中一個 CommandBehavior 值來建立 OracleDataReader

ExecuteReaderAsync()
已淘汰.

非同步版本的 ExecuteReader ,它會針對其連線執行命令,並傳回 DbDataReader 可用來存取結果的 。

以 CancellationToken.None 叫用 ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)

(繼承來源 DbCommand)
ExecuteReaderAsync(CancellationToken)
已淘汰.

非同步版本的 ExecuteReader ,它會針對其連線執行命令,並傳回 DbDataReader 可用來存取結果的 。

叫用 ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)

(繼承來源 DbCommand)
ExecuteReaderAsync(CommandBehavior)
已淘汰.

非同步版本的 ExecuteReader ,它會針對其連線執行命令,並傳回 DbDataReader 可用來存取結果的 。

叫用 ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)

(繼承來源 DbCommand)
ExecuteReaderAsync(CommandBehavior, CancellationToken)
已淘汰.

叫用 ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)

(繼承來源 DbCommand)
ExecuteScalar()
已淘汰.

執行查詢,並傳回查詢以 .NET 資料型別形式所傳回的結果集第一個資料列的第一個資料行。 額外的資料行或資料列都會遭到忽略。

ExecuteScalarAsync()
已淘汰.

的非同步版本 ExecuteScalar() ,它會執行 命令,並傳回第一個傳回結果集中第一個資料列的第一個資料行。 所有其他資料行、資料列和結果集都會被忽略。

以 CancellationToken.None 叫用 ExecuteScalarAsync(CancellationToken)

(繼承來源 DbCommand)
ExecuteScalarAsync(CancellationToken)
已淘汰.

這是 ExecuteScalar() 的非同步版本。 提供者應該覆寫為適當的實作。 可以選擇性地接受忽略語彙基元。

預設實作會叫用同步ExecuteScalar()方法,並傳回完成的工作,封鎖呼叫的執行緒。 如果傳遞一個已經被取消的取消語彙基元,預設實作會傳回已取消的工作。 ExecuteScalar 擲回的例外狀況會透過傳回的工作例外狀況屬性來傳送。

在傳回的工作完成之前,不叫用 DbCommand 物件的其他方法及屬性。

(繼承來源 DbCommand)
GetHashCode()
已淘汰.

做為預設雜湊函式。

(繼承來源 Object)
GetLifetimeService()
已淘汰.

擷取控制這個執行個體存留期 (Lifetime) 原則的目前存留期服務物件。

(繼承來源 MarshalByRefObject)
GetService(Type)
已淘汰.

傳回表示 Component 或其 Container 所提供之服務的物件。

(繼承來源 Component)
GetType()
已淘汰.

取得目前執行個體的 Type

(繼承來源 Object)
InitializeLifetimeService()
已淘汰.

取得存留期服務物件,以控制這個執行個體的存留期原則。

(繼承來源 MarshalByRefObject)
MemberwiseClone()
已淘汰.

建立目前 Object 的淺層複製。

(繼承來源 Object)
MemberwiseClone(Boolean)
已淘汰.

建立目前 MarshalByRefObject 物件的淺層複本。

(繼承來源 MarshalByRefObject)
Prepare()
已淘汰.

在資料來源上建立命令的準備好的 (或已編譯的) 版本。

PrepareAsync(CancellationToken)
已淘汰.

在資料來源上非同步地建立預先準備 (或預先編譯) 版本的命令。

(繼承來源 DbCommand)
ResetCommandTimeout()
已淘汰.

重設 CommandTimeout 屬性為預設值。

ToString()
已淘汰.

傳回任何包含 Component 名稱的 String。 不應覆寫此方法。

(繼承來源 Component)

事件

Disposed
已淘汰.

Dispose() 方法的呼叫處置元件時,就會發生。

(繼承來源 Component)

明確介面實作

IDbCommand.Connection
已淘汰.

取得或設定 IDbCommand 的這個執行個體所使用的 IDbConnection

(繼承來源 DbCommand)
IDbCommand.CreateParameter()
已淘汰.

建立 IDbDataParameter 物件的新執行個體。

IDbCommand.CreateParameter()
已淘汰.

建立 IDbDataParameter 物件的新執行個體。

(繼承來源 DbCommand)
IDbCommand.ExecuteReader()
已淘汰.

針對 Connection 執行 CommandText,並建置 IDataReader

IDbCommand.ExecuteReader()
已淘汰.

針對 Connection 執行 CommandText,並建置 IDataReader

(繼承來源 DbCommand)
IDbCommand.ExecuteReader(CommandBehavior)
已淘汰.

針對 CommandText 執行 Connection,並使用其中一個 IDataReader 值來建置 CommandBehavior

IDbCommand.ExecuteReader(CommandBehavior)
已淘汰.

針對 Connection 執行 CommandText,並使用其中一個 CommandBehavior 值來建置 IDataReader

(繼承來源 DbCommand)
IDbCommand.Parameters
已淘汰.

取得 IDataParameterCollection

(繼承來源 DbCommand)
IDbCommand.Transaction
已淘汰.

取得或設定 DbTransaction,此 DbCommand 物件會在其中執行。

(繼承來源 DbCommand)

適用於

另請參閱