SqlCeDataAdapter 類別

表示資料命令集和資料庫連接,這些是用於填入 DataSet 並更新資料來源。

繼承階層

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Data.Common.DataAdapter
        System.Data.Common.DbDataAdapter
          System.Data.SqlServerCe.SqlCeDataAdapter

命名空間:  System.Data.SqlServerCe
組件:  System.Data.SqlServerCe (在 System.Data.SqlServerCe.dll 中)

語法

'宣告
Public NotInheritable Class SqlCeDataAdapter _
    Inherits DbDataAdapter _
    Implements ICloneable
'用途
Dim instance As SqlCeDataAdapter
public sealed class SqlCeDataAdapter : DbDataAdapter, 
    ICloneable
public ref class SqlCeDataAdapter sealed : public DbDataAdapter, 
    ICloneable
[<SealedAttribute>]
type SqlCeDataAdapter =  
    class
        inherit DbDataAdapter
        interface ICloneable
    end
public final class SqlCeDataAdapter extends DbDataAdapter implements ICloneable

SqlCeDataAdapter 型別公開下列成員。

建構函式

  名稱 說明
公用方法 SqlCeDataAdapter() 初始化 SqlCeDataAdapter 類別的新執行個體。
公用方法 SqlCeDataAdapter(SqlCeCommand) 使用指定的 SqlCeCommand 做為 SelectCommand 屬性以初始化 SqlCeDataAdapter 類別的新執行個體。
公用方法 SqlCeDataAdapter(String, SqlCeConnection) 使用 SelectCommandSqlCeConnection 物件初始化 SqlCeDataAdapter 類別的新執行個體。
公用方法 SqlCeDataAdapter(String, String) 使用 SelectCommand 和連接字串以初始化 SqlCeDataAdapter 類別的新執行個體。

上層

屬性

  名稱 說明
公用屬性 AcceptChangesDuringFill (繼承自 DataAdapter)
公用屬性 AcceptChangesDuringUpdate (繼承自 DataAdapter)
受保護的屬性 CanRaiseEvents (繼承自 Component)
公用屬性 Container (繼承自 Component)
公用屬性 ContinueUpdateOnError (繼承自 DataAdapter)
公用屬性 DeleteCommand 取得或設定 SQL 陳述式從資料集刪除資料錄。
受保護的屬性 DesignMode (繼承自 Component)
受保護的屬性 Events (繼承自 Component)
受保護的屬性 FillCommandBehavior (繼承自 DbDataAdapter)
公用屬性 FillLoadOption (繼承自 DataAdapter)
公用屬性 InsertCommand 取得或設定用於將新資料錄插入至資料來源的 SQL 陳述式。
公用屬性 MissingMappingAction (繼承自 DataAdapter)
公用屬性 MissingSchemaAction (繼承自 DataAdapter)
公用屬性 ReturnProviderSpecificTypes (繼承自 DataAdapter)
公用屬性 SelectCommand 取得或設定用於在資料來源中選取資料錄的 SQL 陳述式。
公用屬性 Site (繼承自 Component)
公用屬性 TableMappings (繼承自 DataAdapter)
公用屬性 UpdateBatchSize (繼承自 DbDataAdapter)
公用屬性 UpdateCommand 取得或設定用於在資料來源中更新資料錄的 SQL 陳述式。

上層

方法

  名稱 說明
受保護的方法 AddToBatch (繼承自 DbDataAdapter)
受保護的方法 ClearBatch (繼承自 DbDataAdapter)
受保護的方法 CloneInternals 已經過時。 (繼承自 DataAdapter)
公用方法 CreateObjRef (繼承自 MarshalByRefObject)
受保護的方法 CreateRowUpdatedEvent (繼承自 DbDataAdapter)
受保護的方法 CreateRowUpdatingEvent (繼承自 DbDataAdapter)
受保護的方法 CreateTableMappings (繼承自 DataAdapter)
公用方法 Dispose() 處置目前執行個體。
受保護的方法 Dispose(Boolean) (繼承自 DbDataAdapter)
公用方法 Equals (繼承自 Object)
受保護的方法 ExecuteBatch (繼承自 DbDataAdapter)
公用方法 Fill(DataSet) (繼承自 DbDataAdapter)
公用方法 Fill(DataTable) (繼承自 DbDataAdapter)
公用方法 Fill(DataSet, String) (繼承自 DbDataAdapter)
受保護的方法 Fill(DataTable, IDataReader) (繼承自 DataAdapter)
公用方法 Fill(Int32, Int32, array<DataTable[]) (繼承自 DbDataAdapter)
受保護的方法 Fill(DataTable, IDbCommand, CommandBehavior) (繼承自 DbDataAdapter)
公用方法 Fill(DataSet, Int32, Int32, String) (繼承自 DbDataAdapter)
受保護的方法 Fill(array<DataTable[], IDataReader, Int32, Int32) (繼承自 DataAdapter)
受保護的方法 Fill(array<DataTable[], Int32, Int32, IDbCommand, CommandBehavior) (繼承自 DbDataAdapter)
受保護的方法 Fill(DataSet, String, IDataReader, Int32, Int32) (繼承自 DataAdapter)
受保護的方法 Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior) (繼承自 DbDataAdapter)
公用方法 FillSchema(DataTable, SchemaType) (繼承自 DbDataAdapter)
公用方法 FillSchema(DataSet, SchemaType) (繼承自 DbDataAdapter)
公用方法 FillSchema(DataSet, SchemaType, String) (繼承自 DbDataAdapter)
受保護的方法 FillSchema(DataTable, SchemaType, IDataReader) (繼承自 DataAdapter)
受保護的方法 FillSchema(DataTable, SchemaType, IDbCommand, CommandBehavior) (繼承自 DbDataAdapter)
受保護的方法 FillSchema(DataSet, SchemaType, String, IDataReader) (繼承自 DataAdapter)
受保護的方法 FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior) (繼承自 DbDataAdapter)
受保護的方法 Finalize (繼承自 Component)
受保護的方法 GetBatchedParameter (繼承自 DbDataAdapter)
受保護的方法 GetBatchedRecordsAffected (繼承自 DbDataAdapter)
公用方法 GetFillParameters (繼承自 DbDataAdapter)
公用方法 GetHashCode (繼承自 Object)
公用方法 GetLifetimeService (繼承自 MarshalByRefObject)
受保護的方法 GetService (繼承自 Component)
公用方法 GetType (繼承自 Object)
受保護的方法 HasTableMappings (繼承自 DataAdapter)
受保護的方法 InitializeBatching (繼承自 DbDataAdapter)
公用方法 InitializeLifetimeService (繼承自 MarshalByRefObject)
受保護的方法 MemberwiseClone() (繼承自 Object)
受保護的方法 MemberwiseClone(Boolean) (繼承自 MarshalByRefObject)
受保護的方法 OnFillError (繼承自 DataAdapter)
受保護的方法 OnRowUpdated (繼承自 DbDataAdapter)
受保護的方法 OnRowUpdating (繼承自 DbDataAdapter)
公用方法 ResetFillLoadOption (繼承自 DataAdapter)
公用方法 ShouldSerializeAcceptChangesDuringFill (繼承自 DataAdapter)
公用方法 ShouldSerializeFillLoadOption (繼承自 DataAdapter)
受保護的方法 ShouldSerializeTableMappings (繼承自 DataAdapter)
受保護的方法 TerminateBatching (繼承自 DbDataAdapter)
公用方法 ToString (繼承自 Component)
公用方法 Update(DataSet) (繼承自 DbDataAdapter)
公用方法 Update(array<DataRow[]) (繼承自 DbDataAdapter)
公用方法 Update(DataTable) (繼承自 DbDataAdapter)
公用方法 Update(DataSet, String) (繼承自 DbDataAdapter)
受保護的方法 Update(array<DataRow[], DataTableMapping) (繼承自 DbDataAdapter)

上層

事件

  名稱 說明
公用事件 Disposed (繼承自 Component)
公用事件 FillError (繼承自 DataAdapter)
公用事件 RowUpdated 發生在呼叫 Update 的期間,針對資料來源執行更新命令之後。嘗試進行更新,因而引發這個事件。
公用事件 RowUpdating 發生在呼叫 Update 的期間,針對資料來源執行更新命令之前。嘗試進行更新,因而引發這個事件。

上層

明確 繼承 實作

  名稱 說明
明確介面實作私用方法 ICloneable.Clone 如需此成員的描述,請參閱<ICloneable.Clone()>。
明確介面實作私用屬性 IDbDataAdapter.DeleteCommand (繼承自 DbDataAdapter)
明確介面實作私用屬性 IDbDataAdapter.InsertCommand (繼承自 DbDataAdapter)
明確介面實作私用屬性 IDbDataAdapter.SelectCommand (繼承自 DbDataAdapter)
明確介面實作私用屬性 IDataAdapter.TableMappings (繼承自 DataAdapter)
明確介面實作私用屬性 IDbDataAdapter.UpdateCommand (繼承自 DbDataAdapter)

上層

備註

SqlCeDataAdapter 可做為 DataSet 和資料來源之間的橋樑。它用於從資料來源擷取資料,以及將資料儲存至資料來源。SqlCeDataAdapter 藉由使用 Fill 將資料從資料來源載入到 DataSet,並使用 Update 將在 DataSet 中所做的變更傳回到資料來源,來提供這座橋樑。

當 SqlCeDataAdapter 填入 DataSet 時,如果傳回資料所需的資料表和資料行不存在,則會加以建立。不過,除非 MissingSchemaAction 屬性是設定為 AddWithKey,否則在隱含建立的結構描述中將不包含主索引鍵資訊。您也可以使用 SqlCeDataAdapter 建立 DataSet 的結構描述 (包括主索引鍵資訊),然後再使用 FillSchema 在其中填入資料。

SqlCeDataAdapter 包含 SelectCommandInsertCommandDeleteCommandUpdateCommandTableMappings 屬性,可協助載入及更新資料。

當您建立 SqlCeDataAdapter 的執行個體時,屬性會設定為初始值。如需這些值的清單,請參閱 SqlCeDataAdapter 建構函式。

範例

下列範例會使用 SqlCeCommand、SqlCeDataAdapter 和 SqlCeConnection 從資料來源選擇資料錄,並使用選取的資料列填入 DataSet。接著會傳回填入的 DataSet。若要完成這項作業,請為方法傳遞初始化的 DataSet、連接字串和 SQL SELECT 陳述式的查詢字串。

Try
    Dim strDataSource As String
    strDataSource = "" & _
        "Data Source = C:\Program Files\" & _
        "Microsoft SQL Server Compact Edition\v3.5\Samples\" & _
        "Northwind.sdf"
    Dim conn As New SqlCeConnection
    conn.ConnectionString = strDataSource & ";Password='<password>'"

    Dim selectCmd As SqlCeCommand = conn.CreateCommand
    selectCmd.CommandText = "SELECT * FROM Employees"

    Dim adp As New SqlCeDataAdapter(selectCmd)

    Dim ds As New DataSet

    ' Note: Fill will leave the connection in its original state;
    ' In this case, the connection was closed so it will be left closed
    adp.Fill(ds)

    Console.WriteLine(("The SqlCeDataAdapter succesfully filled " & _
                       ds.Tables.Item(0).Rows.Count & " rows in the DataSet!"))
Catch ds As Exception
    Console.WriteLine(ds.Message)
Finally
    Console.WriteLine(vbNewLine & vbNewLine & vbNewLine & _
                      "Press any key to continue...")
    Console.ReadKey()
End Try
try
{
    string strDataSource =
        @"Data Source = C:\Program Files\" +
        @"Microsoft SQL Server Compact Edition\v3.5\Samples\" +
        @"Northwind.sdf";
    SqlCeConnection conn = new SqlCeConnection();
    conn.ConnectionString = strDataSource + ";Password='<password>'";

    SqlCeCommand selectCmd = conn.CreateCommand();
    selectCmd.CommandText = "SELECT * FROM Employees";

    SqlCeDataAdapter adp = new SqlCeDataAdapter(selectCmd);

    DataSet ds = new DataSet();

    // Note: Fill will leave the connection in its original state;
    // In this case, the connection was closed so it will be left closed
    //
    adp.Fill(ds);

    Console.WriteLine("The SqlCeDataAdapter succesfully filled " +
        ds.Tables[0].Rows.Count + " rows in the DataSet!");
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}
finally
{
    Console.WriteLine("\n\n\nPress any key to continue...");
    Console.ReadKey();
}

執行緒安全性

這個類型的任何公用靜態 (在 Microsoft Visual Basic 中為 Shared) 成員都是執行緒安全的。並不是所有的執行個體成員都保證可以用於所有的執行緒。

請參閱

參考

System.Data.SqlServerCe 命名空間

SqlCeConnection

SqlCeCommand

DataSet

DataTable