OdbcCommand 類別

定義

表示要對資料來源執行的 SQL 陳述式或預存程序。 此類別無法獲得繼承。

public ref class OdbcCommand sealed : System::Data::Common::DbCommand, ICloneable
public ref class OdbcCommand sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbCommand
public sealed class OdbcCommand : System.Data.Common.DbCommand, ICloneable
public sealed class OdbcCommand : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbCommand
type OdbcCommand = class
    inherit DbCommand
    interface ICloneable
type OdbcCommand = class
    inherit Component
    interface ICloneable
    interface IDbCommand
    interface IDisposable
Public NotInheritable Class OdbcCommand
Inherits DbCommand
Implements ICloneable
Public NotInheritable Class OdbcCommand
Inherits Component
Implements ICloneable, IDbCommand, IDisposable
繼承
OdbcCommand
繼承
繼承
實作

範例

下列範例會使用 ExecuteNonQuery

public void InsertRow(string connectionString, string insertSQL)
{
    using (OdbcConnection connection =
               new OdbcConnection(connectionString))
    {
        // The insertSQL string contains a SQL statement that
        // inserts a new row in the source table.
        OdbcCommand command = new OdbcCommand(insertSQL, connection);

        // Open the connection and execute the insert command.
        try
        {
            connection.Open();
            command.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
Public Sub InsertRow(ByVal connectionString As String, _
    ByVal insertSQL As String)

    Using connection As New OdbcConnection(connectionString)
        ' The insertSQL string contains a SQL statement that
        ' inserts a new row in the source table.
        Dim command As New OdbcCommand(insertSQL, connection)

        ' Open the connection and execute the insert command.
        Try
            connection.Open()
            command.ExecuteNonQuery()
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
        ' The connection is automatically closed when the
        ' code exits the Using block.
    End Using
End Sub

備註

類別 OdbcCommand 提供下列方法,以針對數據源執行命令:

項目 描述
ExecuteReader 執行傳回數據列的命令。
ExecuteNonQuery 執行 SQL INSERT、DELETE、UPDATE 和 SET 語句等命令。
ExecuteScalar 從資料庫擷取單一值,例如匯總值。

您可以重設 CommandText 屬性並重複使用 OdbcCommand 物件。 不過,您必須先關閉 , OdbcDataReader 才能執行新的或先前的命令。

如果命令的執行造成嚴重OdbcException性,例如 SQL Server 嚴重性層級 20 或以上,OdbcConnection可能會關閉。 但是,使用者可以再次開啟連線,然後繼續進行。

建構函式

OdbcCommand()

初始化 OdbcCommand 類別的新執行個體。

OdbcCommand(String)

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

OdbcCommand(String, OdbcConnection)

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

OdbcCommand(String, OdbcConnection, OdbcTransaction)

使用查詢的文字、OdbcConnection 物件和 Transaction,初始化 OdbcCommand 類別的新執行個體。

屬性

CanRaiseEvents

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

(繼承來源 Component)
CommandText

取得或設定 SQL 陳述式或預存程序以對資料來源執行。

CommandTimeout

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

CommandType

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

Connection

取得或設定 OdbcCommand 的這個執行個體所使用的 OdbcConnection

Container

取得包含 IContainerComponent

(繼承來源 Component)
DbConnection

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

(繼承來源 DbCommand)
DbParameterCollection

取得 DbParameter 物件的集合。

(繼承來源 DbCommand)
DbTransaction

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

(繼承來源 DbCommand)
DesignMode

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

(繼承來源 Component)
DesignTimeVisible

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

Events

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

(繼承來源 Component)
Parameters

取得 OdbcParameterCollection

Site

取得或設定 ComponentISite

(繼承來源 Component)
Transaction

取得或設定在其中執行 OdbcTransactionOdbcCommand

UpdatedRowSource

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

方法

Cancel()

嘗試取消 OdbcCommand 的執行。

CreateDbParameter()

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

(繼承來源 DbCommand)
CreateObjRef(Type)

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

(繼承來源 MarshalByRefObject)
CreateParameter()

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

Dispose()

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

(繼承來源 DbCommand)
Dispose()

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

(繼承來源 Component)
Dispose(Boolean)

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

(繼承來源 DbCommand)
Dispose(Boolean)

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

(繼承來源 Component)
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)
ExecuteReader()

傳送 CommandTextConnection,並建置 OdbcDataReader

ExecuteReader(CommandBehavior)

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

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()

執行查詢,並傳回查詢所傳回之結果集中第一個資料列的第一個資料行。 忽略其他資料行或資料列。

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()

傳回代表目前物件的字串。

(繼承來源 Object)
ToString()

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

(繼承來源 Component)

事件

Disposed

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

(繼承來源 Component)

明確介面實作

ICloneable.Clone()

如需這個成員的說明,請參閱 Clone()

IDbCommand.Connection

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

(繼承來源 DbCommand)
IDbCommand.CreateParameter()

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

IDbCommand.CreateParameter()

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

(繼承來源 DbCommand)
IDbCommand.ExecuteReader()

此 API 支援此產品基礎結構,但無法直接用於程式碼之中。

針對 Connection 執行 CommandText,並建置 IDataReader

IDbCommand.ExecuteReader()

針對 Connection 執行 CommandText,並建置 IDataReader

(繼承來源 DbCommand)
IDbCommand.ExecuteReader(CommandBehavior)

此 API 支援此產品基礎結構,但無法直接用於程式碼之中。

針對 Connection 執行 CommandText,並使用指定行為來建置 IDataReader

IDbCommand.ExecuteReader(CommandBehavior)

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

(繼承來源 DbCommand)
IDbCommand.Parameters

取得 IDataParameterCollection

(繼承來源 DbCommand)
IDbCommand.Transaction

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

(繼承來源 DbCommand)

擴充方法

ConfigureAwait(IAsyncDisposable, Boolean)

設定如何執行從非同步可處置項目傳回的工作 await。

適用於

另請參閱