共用方式為


OdbcDataAdapter 類別

定義

代表一組資料指令及與資料來源的連結,用於填充 DataSet 及更新資料來源。 無法繼承這個類別。

public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter
type OdbcDataAdapter = class
    inherit DbDataAdapter
    interface IDataAdapter
    interface IDbDataAdapter
    interface ICloneable
type OdbcDataAdapter = class
    inherit DbDataAdapter
    interface IDbDataAdapter
    interface IDataAdapter
    interface ICloneable
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
Implements ICloneable
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
繼承
實作

範例

以下範例使用 OdbcCommandOdbcDataAdapterOdbcConnection 來選擇記錄,並將所選列填入 a DataSet

public DataSet GetDataSetFromAdapter(
    DataSet dataSet, string connectionString, string queryString)
{
    using (OdbcConnection connection =
               new OdbcConnection(connectionString))
    {
        OdbcDataAdapter adapter =
            new OdbcDataAdapter(queryString, connection);

        // Open the connection and fill the DataSet.
        try
        {
            connection.Open();
            adapter.Fill(dataSet);
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
    return dataSet;
}
Public Function GetDataSetFromAdapter( _
    ByVal dataSet As DataSet, ByVal connectionString As String, _
    ByVal queryString As String) As DataSet

    Using connection As New OdbcConnection(connectionString)
        Dim adapter As New OdbcDataAdapter(queryString, connection)

        ' Open the connection and fill the DataSet.
        Try
            connection.Open()
            adapter.Fill(dataSet)
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
        ' The connection is automatically closed when the
        ' code exits the Using block.
    End Using

    Return dataSet
End Function

備註

OdbcDataAdapter 作為連接資料 DataSet 來源的橋樑,用於擷取與儲存資料。 透過 OdbcDataAdapterFill 資料從資料來源載入 DataSet至 ,並透過將 Update 先前所做的 DataSet 變更傳送回資料來源,來提供此橋接。

當 填 OdbcDataAdapter 滿 時 DataSet,會建立所需的資料表和欄位(如果這些資料尚未存在的話)。 然而,除非 MissingSchemaAction 將屬性設為 AddWithKey,否則隱式建立的結構中不會包含主鍵資訊。 你也可以先 OdbcDataAdapter 建立 的結構 DataSet結構,包含主鍵資訊,然後再用 來填充資料 FillSchema。 欲了解更多資訊,請參閱 「將現有約束加入資料集」。

備註

當你在沒有主鍵欄位的資料來源上呼叫該 Fill 方法時,會 OdbcDataAdapter 嘗試將唯一的限制欄位升調到主鍵。 在此過程中,將 OdbcDataAdapter 唯一限制標記為不可空。 除非唯一限制欄位中有空值,否則此行為有效。 若存在空值,則 Fill 該方法因約束違反而失敗。 為避免此情況,唯一限制欄中不應允許 null 值。

備註

由於原生 ODBC 驅動程式的限制,當你撥打 FillSchema時,只會回傳一個DataTable。 即使執行 SQL 批次語句,且預期會有多個 DataTable 物件,這點也同樣適用。

同時 OdbcDataAdapter 也包含 SelectCommandInsertCommandDeleteCommandUpdateCommandTableMappings 屬性,以便資料載入與更新。

建構函式

名稱 Description
OdbcDataAdapter()

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

OdbcDataAdapter(OdbcCommand)

以指定的 SQL SELECT 陳述式初始化該 OdbcDataAdapter 類別的新實例。

OdbcDataAdapter(String, OdbcConnection)

用 SQL SELECT 陳述句和 OdbcConnection. 來初始化該OdbcDataAdapter類別的新實例。

OdbcDataAdapter(String, String)

以 SQL SELECT 語句和連接字串初始化該 OdbcDataAdapter 類別的新實例。

欄位

名稱 Description
DefaultSourceTableName

物件用於資料表映射的預設名稱 DataAdapter

(繼承來源 DbDataAdapter)

屬性

名稱 Description
AcceptChangesDuringFill

在任何填充操作中加入 時DataTable,會取得或設定一個值,AcceptChanges()表示是否在 上被呼叫DataRow

(繼承來源 DataAdapter)
AcceptChangesDuringUpdate

在 中 被呼叫 時,若 被呼叫Update(DataSet),則 得到或設定 AcceptChanges()

(繼承來源 DataAdapter)
CanRaiseEvents

會得到一個值,表示該元件是否能引發事件。

(繼承來源 Component)
Container

得到 IContainer 包含 Component的 。

(繼承來源 Component)
ContinueUpdateOnError

取得或設定一個值,指定在資料列更新中遇到錯誤時是否要產生例外。

(繼承來源 DataAdapter)
DeleteCommand

取得或設定一個 SQL 陳述式或儲存程序,用於刪除資料來源中的紀錄。

DesignMode

會得到一個值,表示目前 Component 是否處於設計模式。

(繼承來源 Component)
Events

會取得與此 Component連結的事件處理程序清單。

(繼承來源 Component)
FillCommandBehavior

接收或設定用來填充資料介面卡的指令行為。

(繼承來源 DbDataAdapter)
FillLoadOption

取得或設定 ,LoadOption決定轉接器如何從 中填充 。DataTableDbDataReader

(繼承來源 DataAdapter)
InsertCommand

取得或設定一個 SQL 陳述式或儲存程序,用於將新紀錄插入資料來源。

MissingMappingAction

當輸入資料沒有相符的資料表或欄位時,決定應採取的行動。

(繼承來源 DataAdapter)
MissingSchemaAction

當現有 DataSet 結構與輸入資料不符時,決定應採取的行動。

(繼承來源 DataAdapter)
ReturnProviderSpecificTypes

取得或設定方法應 Fill 回傳提供者特定值或常見符合 CLS 的值。

(繼承來源 DataAdapter)
SelectCommand

取得或設定一個 SQL 陳述式或儲存程序,用於選擇資料來源中的紀錄。

Site

取得或設定 ISiteComponent

(繼承來源 Component)
TableMappings

取得一個集合,提供來源資料表與 DataTable之間的主要映射。

(繼承來源 DataAdapter)
UpdateBatchSize

取得或設定一個值,啟用或停用批次處理支援,並指定批次中可執行的指令數量。

(繼承來源 DbDataAdapter)
UpdateCommand

取得或設定一個 SQL 陳述式或儲存程序,用於更新資料來源中的記錄。

方法

名稱 Description
AddToBatch(IDbCommand)

會把 a IDbCommand 加到目前的批次裡。

(繼承來源 DbDataAdapter)
ClearBatch()

從批次中移除所有 IDbCommand 物件。

(繼承來源 DbDataAdapter)
CloneInternals()
已淘汰.
已淘汰.
已淘汰.
已淘汰.

會建立這個實例 DataAdapter的副本。

(繼承來源 DataAdapter)
CreateObjRef(Type)

建立一個物件,包含產生代理伺服器所需的所有相關資訊,用於與遠端物件通訊。

(繼承來源 MarshalByRefObject)
CreateRowUpdatedEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

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

(繼承來源 DbDataAdapter)
CreateRowUpdatingEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

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

(繼承來源 DbDataAdapter)
CreateTableMappings()

會產生一個新的 DataTableMappingCollection

(繼承來源 DataAdapter)
Dispose()

釋放所有由 Component.

(繼承來源 Component)
Dispose(Boolean)

釋放 未管理的資源, DbDataAdapter 並可選擇性地釋放受管理資源。

(繼承來源 DbDataAdapter)
Equals(Object)

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

(繼承來源 Object)
ExecuteBatch()

執行目前的批次。

(繼承來源 DbDataAdapter)
Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior)

在指定範圍內 DataSet 新增或刷新資料列,以配合資料來源的資料表 DataSet 名稱、指令字串及指令行為。

(繼承來源 DbDataAdapter)
Fill(DataSet, Int32, Int32, String)

在指定範圍內 DataSet 新增或刷新資料列,以 DataSet 配合資料來源中的 and DataTable 名稱。

(繼承來源 DbDataAdapter)
Fill(DataSet, String, IDataReader, Int32, Int32)

在指定範圍內DataSet新增或刷新資料列,以配合資料來源中的列,使用、 DataSetDataTable、 和 IDataReader 名稱。

(繼承來源 DbDataAdapter)
Fill(DataSet, String)

使用 DataSetDataTable 名稱新增或刷新資料來源中的列,使其與資料來源中的列DataSet相符。

(繼承來源 DbDataAdapter)
Fill(DataSet)

新增或刷新 DataSet.

(繼承來源 DbDataAdapter)
Fill(DataTable, IDataReader)

使用 指定的 DataTableIDataReader 名稱,新增或刷新 a DataTable 中的列以匹配資料來源中的列。

(繼承來源 DbDataAdapter)
Fill(DataTable, IDbCommand, CommandBehavior)

使用 、 DataTableIDbCommandCommandBehavior和 ,新增或刷新 a DataTable 中的列以匹配資料來源中的列。

(繼承來源 DbDataAdapter)
Fill(DataTable)

在指定範圍內 DataSet 新增或刷新資料列,以符合資料來源中使用 DataTable 名稱的列。

(繼承來源 DbDataAdapter)
Fill(DataTable[], IDataReader, Int32, Int32)

在物件集合 DataTable 中新增或刷新指定範圍內的列,以匹配資料來源中的列。

(繼承來源 DataAdapter)
Fill(DataTable[], Int32, Int32, IDbCommand, CommandBehavior)

在指定範圍內 DataSet 新增或刷新資料列,以 DataSet 配合資料來源中的 and DataTable 名稱。

(繼承來源 DbDataAdapter)
Fill(Int32, Int32, DataTable[])

從指定記錄開始,從指定紀錄開始,新增或刷新一個或多個 DataTable 物件的列,以匹配資料來源中的列,並取得最多最多記錄數。

(繼承來源 DbDataAdapter)
FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior)

在指定DataSet值中加入 aDataTable,並根據指定 SchemaType配置結構以符合資料來源的結構。

(繼承來源 DbDataAdapter)
FillSchema(DataSet, SchemaType, String, IDataReader)

將 a DataTable 加入指定的 DataSet

(繼承來源 DataAdapter)
FillSchema(DataSet, SchemaType, String)

將 a DataTable 加入指定的 DataSet 資料,並根據指定的 SchemaTypeDataTable配置結構以符合資料來源中的結構。

(繼承來源 DbDataAdapter)
FillSchema(DataSet, SchemaType)

在指定的DataSet資料中新增一個DataTable命名的「資料表」,並根據指定的SchemaType資料配置結構以符合資料來源中的結構。

(繼承來源 DbDataAdapter)
FillSchema(DataTable, SchemaType, IDataReader)

將 a DataTable 加入指定的 DataSet

(繼承來源 DataAdapter)
FillSchema(DataTable, SchemaType, IDbCommand, CommandBehavior)

根據指定的 SchemaType、 指令字串及CommandBehavior值配置 的結構DataTable

(繼承來源 DbDataAdapter)
FillSchema(DataTable, SchemaType)

根據指定的 SchemaType配置 的結構DataTable

(繼承來源 DbDataAdapter)
GetBatchedParameter(Int32, Int32)

從目前批次中的指令回傳 a IDataParameter

(繼承來源 DbDataAdapter)
GetBatchedRecordsAffected(Int32, Int32, Exception)

回傳一次更新嘗試的資訊,包含較大的批次更新。

(繼承來源 DbDataAdapter)
GetFillParameters()

執行 SQL SELECT 語句時,取得使用者設定的參數。

(繼承來源 DbDataAdapter)
GetHashCode()

做為預設哈希函式。

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

取得目前控制此實例生命週期政策的終身服務物件。

(繼承來源 MarshalByRefObject)
GetService(Type)

回傳一個由 或Component其 所提供的Container服務的物件。

(繼承來源 Component)
GetType()

取得目前實例的 Type

(繼承來源 Object)
HasTableMappings()

表示是否已創造 a DataTableMappingCollection

(繼承來源 DataAdapter)
InitializeBatching()

初始 DbDataAdapter化 .

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

取得一個終身服務物件以控制此實例的終身政策。

(繼承來源 MarshalByRefObject)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
MemberwiseClone(Boolean)

建立一個 MarshalByRefObject 目前物件的淺層複製品。

(繼承來源 MarshalByRefObject)
OnFillError(FillErrorEventArgs)

引發 FillError 事件。

(繼承來源 DbDataAdapter)
OnRowUpdated(RowUpdatedEventArgs)

會觸發 RowUpdated .NET 資料提供者的事件。

(繼承來源 DbDataAdapter)
OnRowUpdating(RowUpdatingEventArgs)

會觸發 RowUpdating .NET 資料提供者的事件。

(繼承來源 DbDataAdapter)
ResetFillLoadOption()

重置FillLoadOption為預設狀態並導致 Fill(DataSet)AcceptChangesDuringFill

(繼承來源 DataAdapter)
ShouldSerializeAcceptChangesDuringFill()

決定該屬性是否 AcceptChangesDuringFill 應該被保留。

(繼承來源 DataAdapter)
ShouldSerializeFillLoadOption()

決定該屬性是否 FillLoadOption 應該被保留。

(繼承來源 DataAdapter)
ShouldSerializeTableMappings()

判斷是否存在一個或多個 DataTableMapping 物件,並決定是否應該被持久化。

(繼承來源 DataAdapter)
TerminateBatching()

結束批次處理 DbDataAdapter

(繼承來源 DbDataAdapter)
ToString()

回傳 String 包含 的名稱 Component(若有的話)。 此方法不應被覆蓋。

(繼承來源 Component)
Update(DataRow[], DataTableMapping)

透過對指定物件陣列 DataRow 中插入、更新或刪除的每一列執行相應的 INSERT、UPDATE 或 DELETE 語句來更新資料庫中的值。

(繼承來源 DbDataAdapter)
Update(DataRow[])

透過執行指定陣列 DataSet中每個插入、更新或刪除的列的 INSERT、UPDATE 或 DELETE 語句,更新資料庫中的值。

(繼承來源 DbDataAdapter)
Update(DataSet, String)

透過對指定DataTable名稱的 中DataSet每個插入、更新或刪除的列執行相應的 INSERT、UPDATE 或 DELETE 語句,更新資料庫中的值。

(繼承來源 DbDataAdapter)
Update(DataSet)

透過執行指定、更新或刪除的每一列 DataSet的 INSERT、UPDATE 或 DELETE 語句,更新資料庫中的值。

(繼承來源 DbDataAdapter)
Update(DataTable)

透過執行指定、更新或刪除的每一列 DataTable的 INSERT、UPDATE 或 DELETE 語句,更新資料庫中的值。

(繼承來源 DbDataAdapter)

事件

名稱 Description
Disposed

當元件被呼叫方法 Dispose() 時會發生。

(繼承來源 Component)
FillError

當填充操作發生錯誤時,會回傳此訊息。

(繼承來源 DbDataAdapter)
RowUpdated

發生在對資料來源執行指令後的更新操作中。

RowUpdating

發生在 Update(DataSet) 對資料來源執行指令之前。

明確介面實作

名稱 Description
ICloneable.Clone()

關於此成員的描述,請參見 Clone()

IDataAdapter.TableMappings

取得一個集合,指示來源資料表如何映射到資料集資料表。

(繼承來源 DataAdapter)
IDbDataAdapter.DeleteCommand

關於此成員的描述,請參見 DeleteCommand

IDbDataAdapter.InsertCommand

關於此成員的描述,請參見 InsertCommand

IDbDataAdapter.SelectCommand

關於此成員的描述,請參見 SelectCommand

IDbDataAdapter.UpdateCommand

關於此成員的描述,請參見 UpdateCommand

適用於

另請參閱