DataAdapter.Fill Methode

Definition

Fügt dem DataSet Zeilen hinzu oder aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.Adds or refreshes rows in the DataSet to match those in the data source.

Überlädt

Fill(DataSet)

Fügt dem DataSet Zeilen hinzu oder aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.Adds or refreshes rows in the DataSet to match those in the data source.

Fill(DataTable, IDataReader)

Fügt der DataTable unter Verwendung des DataTable-Namens und des angegebenen IDataReader Zeilen hinzu bzw. aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.Adds or refreshes rows in the DataTable to match those in the data source using the DataTable name and the specified IDataReader.

Fill(DataTable[], IDataReader, Int32, Int32)

Aktualisiert Zeilen in einem angegebenen Bereich in der Auflistung der DataTable-Objekte oder fügt Zeilen hinzu, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.Adds or refreshes rows in a specified range in the collection of DataTable objects to match those in the data source.

Fill(DataSet, String, IDataReader, Int32, Int32)

Aktualisiert Zeilen in einem angegebenen Bereich des DataSet oder fügt Zeilen hinzu, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen, die den Namen des DataSet und den Namen der DataTable verwenden.Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and DataTable names.

Fill(DataSet)

Fügt dem DataSet Zeilen hinzu oder aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.Adds or refreshes rows in the DataSet to match those in the data source.

public:
 virtual int Fill(System::Data::DataSet ^ dataSet);
public:
 abstract int Fill(System::Data::DataSet ^ dataSet);
public virtual int Fill (System.Data.DataSet dataSet);
public abstract int Fill (System.Data.DataSet dataSet);
abstract member Fill : System.Data.DataSet -> int
override this.Fill : System.Data.DataSet -> int
abstract member Fill : System.Data.DataSet -> int
Public Overridable Function Fill (dataSet As DataSet) As Integer
Public MustOverride Function Fill (dataSet As DataSet) As Integer

Parameter

dataSet
DataSet

Ein DataSet, das mit Datensätzen und bei Bedarf mit einem Schema gefüllt wird.A DataSet to fill with records and, if necessary, schema.

Gibt zurück

Int32

Die Anzahl der Zeilen, die dem DataSet erfolgreich hinzufügt bzw. darin aktualisiert wurden.The number of rows successfully added to or refreshed in the DataSet. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.This does not include rows affected by statements that do not return rows.

Implementiert

Hinweise

Die- Fill Methode ruft Zeilen aus der Datenquelle mithilfe der SELECT-Anweisung ab, die von einer zugeordneten Eigenschaft angegeben wird SelectCommand .The Fill method retrieves rows from the data source using the SELECT statement specified by an associated SelectCommand property. Das Verbindungs Objekt, das der SELECT-Anweisung zugeordnet ist, muss gültig sein, aber es muss nicht geöffnet sein.The connection object associated with the SELECT statement must be valid, but it does not need to be open. Wenn die Verbindung geschlossen wird Fill , bevor aufgerufen wird, wird Sie geöffnet, um Daten abzurufen und dann geschlossen zu werden.If the connection is closed before Fill is called, it is opened to retrieve data, then closed. Wenn die Verbindung geöffnet ist Fill , bevor aufgerufen wird, bleibt Sie geöffnet.If the connection is open before Fill is called, it remains open.

Der- Fill Vorgang fügt dann die Zeilen zu den Ziel DataTable Objekten in hinzu DataSet und erstellt die DataTable Objekte, wenn Sie nicht bereits vorhanden sind.The Fill operation then adds the rows to destination DataTable objects in the DataSet, creating the DataTable objects if they do not already exist. Beim Erstellen von DataTable Objekten Fill erstellt der Vorgang normalerweise nur Spaltennamen-Metadaten.When creating DataTable objects, the Fill operation normally creates only column name metadata. Wenn die- MissingSchemaAction Eigenschaft jedoch auf festgelegt ist AddWithKey , werden auch die entsprechenden Primärschlüssel und Einschränkungen erstellt.However, if the MissingSchemaAction property is set to AddWithKey, appropriate primary keys and constraints are also created.

Wenn vom SelectCommand die Ergebnisse eines OUTER JOIN zurückgegeben werden, wird vom DataAdapter kein PrimaryKey -Wert für die resultierende DataTablefestgelegt.If the SelectCommand returns the results of an OUTER JOIN, the DataAdapter does not set a PrimaryKey value for the resulting DataTable. Sie müssen den Primärschlüssel explizit definieren, um sicherzustellen, dass doppelte Zeilen ordnungsgemäß aufgelöst werden.You must explicitly define the primary key to ensure that duplicate rows are resolved correctly. Weitere Informationen finden Sie unter Definieren von primär Schlüsseln.For more information, see Defining Primary Keys.

Wenn beim Auffüllen eines Daten Adapters doppelte Spalten gefunden DataTable werden, werden die Namen für die nachfolgenden Spalten mit dem Muster "columnname1", "columnname2", "columnname3" usw. generiert.If the data adapter encounters duplicate columns while populating a DataTable, it generates names for the subsequent columns, using the pattern "columnname1", "columnname2", "columnname3", and so on. Wenn die eingehenden Daten unbenannte Spalten enthalten, werden sie platziert, der DataSet gemäß dem Muster "Column1", "Column2" usw.If the incoming data contains unnamed columns, they are placed in the DataSet according to the pattern "Column1", "Column2", and so on. Wenn jedem Resultset mehrere Resultsets hinzugefügt werden, DataSet wird es in einer separaten Tabelle abgelegt.When multiple result sets are added to the DataSet each result set is placed in a separate table. Zusätzliche Resultsets werden benannt, indem ganzzahlige Werte an den angegebenen Tabellennamen angehängt werden (z. b. "Table", "table1", "table2" usw.).Additional result sets are named by appending integral values to the specified table name (for example, "Table", "Table1", "Table2", and so on). Anwendungen, die Spalten-und Tabellennamen verwenden, sollten sicherstellen, dass keine Konflikte mit diesen Benennungs Mustern auftreten.Applications using column and table names should ensure that conflicts with these naming patterns does not occur.

Wenn die SELECT-Anweisung zum Auffüllen von DataSet mehrere Ergebnisse zurückgibt, wie z. b. eine Batch-SQL-Anweisung, werden alle nachfolgenden Ergebnisse übersprungen und der nicht hinzugefügt, wenn eines der Ergebnisse einen Fehler enthält DataSet .When the SELECT statement used to populate the DataSet returns multiple results, such as a batch SQL statements, if one of the results contains an error, all subsequent results are skipped and not added to the DataSet.

Die-Methode kann mehrmals Fill auf demselben verwendet werden DataTable .You can use the Fill method multiple times on the same DataTable. Wenn ein Primärschlüssel vorhanden ist, werden eingehende Zeilen mit übereinstimmenden Zeilen zusammengeführt, die bereits vorhanden sind.If a primary key exists, incoming rows are merged with matching rows that already exist. Wenn kein Primärschlüssel vorhanden ist, werden eingehende Zeilen an das angefügt DataTable .If no primary key exists, incoming rows are appended to the DataTable.

Hinweis

Bei der Verarbeitung von Batch-SQL-Anweisungen, die mehrere Ergebnisse zurückgeben, ruft die Implementierung von FillSchema für den .NET Framework Datenanbieter für OLE DB Schema Informationen nur für das erste Ergebnis ab.When handling batch SQL statements that return multiple results, the implementation of FillSchema for the .NET Framework Data Provider for OLE DB retrieves schema information for only the first result. Um Schema Informationen für mehrere Ergebnisse abzurufen, verwenden Fill Sie, wobei MissingSchemaAction auf festgelegt ist AddWithKey .To retrieve schema information for multiple results, use Fill with the MissingSchemaAction set to AddWithKey.

Weitere Informationen

Gilt für:

Produkt Introduced

Fill(DataTable, IDataReader)

Fügt der DataTable unter Verwendung des DataTable-Namens und des angegebenen IDataReader Zeilen hinzu bzw. aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.Adds or refreshes rows in the DataTable to match those in the data source using the DataTable name and the specified IDataReader.

protected:
 virtual int Fill(System::Data::DataTable ^ dataTable, System::Data::IDataReader ^ dataReader);
protected virtual int Fill (System.Data.DataTable dataTable, System.Data.IDataReader dataReader);
abstract member Fill : System.Data.DataTable * System.Data.IDataReader -> int
override this.Fill : System.Data.DataTable * System.Data.IDataReader -> int
Protected Overridable Function Fill (dataTable As DataTable, dataReader As IDataReader) As Integer

Parameter

dataTable
DataTable

Eine DataTable, die mit Datensätzen aufgefüllt werden soll.A DataTable to fill with records.

dataReader
IDataReader

Eine Instanz von IDataReader.An instance of IDataReader.

Gibt zurück

Int32

Die Anzahl der Zeilen, die dem DataTable erfolgreich hinzufügt bzw. darin aktualisiert wurden.The number of rows successfully added to or refreshed in the DataTable. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.This does not include rows affected by statements that do not return rows.

Hinweise

Weitere Informationen finden Sie in den Hinweisen zu DataAdapter.Fill(DataSet) .See the remarks for DataAdapter.Fill(DataSet) for additional information.

Weitere Informationen

Gilt für:

Produkt Introduced

Fill(DataTable[], IDataReader, Int32, Int32)

Aktualisiert Zeilen in einem angegebenen Bereich in der Auflistung der DataTable-Objekte oder fügt Zeilen hinzu, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.Adds or refreshes rows in a specified range in the collection of DataTable objects to match those in the data source.

protected:
 virtual int Fill(cli::array <System::Data::DataTable ^> ^ dataTables, System::Data::IDataReader ^ dataReader, int startRecord, int maxRecords);
protected virtual int Fill (System.Data.DataTable[] dataTables, System.Data.IDataReader dataReader, int startRecord, int maxRecords);
abstract member Fill : System.Data.DataTable[] * System.Data.IDataReader * int * int -> int
override this.Fill : System.Data.DataTable[] * System.Data.IDataReader * int * int -> int
Protected Overridable Function Fill (dataTables As DataTable(), dataReader As IDataReader, startRecord As Integer, maxRecords As Integer) As Integer

Parameter

dataTables
DataTable[]

Eine Auflistung von DataTable-Objekten, die Datensätzen aufgefüllt werden sollA collection of DataTable objects to fill with records.

dataReader
IDataReader

Eine Instanz von IDataReader.An instance of IDataReader.

startRecord
Int32

Der nullbasierte Startindex für die Startdatensatz.The zero-based index of the starting record.

maxRecords
Int32

Eine ganze Zahl, die die maximale Anzahl von Datensätzen angibt.An integer indicating the maximum number of records.

Gibt zurück

Int32

Die Anzahl der Zeilen, die dem DataTable erfolgreich hinzufügt bzw. darin aktualisiert wurden.The number of rows successfully added to or refreshed in the DataTable. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.This does not include rows affected by statements that do not return rows.

Hinweise

Weitere Informationen finden Sie in den Hinweisen zu System.Data.Common.DataAdapter.Fill(System.Data.DataSet) .See the remarks for System.Data.Common.DataAdapter.Fill(System.Data.DataSet) for additional information.

Weitere Informationen

Gilt für:

Produkt Introduced

Fill(DataSet, String, IDataReader, Int32, Int32)

Aktualisiert Zeilen in einem angegebenen Bereich des DataSet oder fügt Zeilen hinzu, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen, die den Namen des DataSet und den Namen der DataTable verwenden.Adds or refreshes rows in a specified range in the DataSet to match those in the data source using the DataSet and DataTable names.

protected:
 virtual int Fill(System::Data::DataSet ^ dataSet, System::String ^ srcTable, System::Data::IDataReader ^ dataReader, int startRecord, int maxRecords);
protected virtual int Fill (System.Data.DataSet dataSet, string srcTable, System.Data.IDataReader dataReader, int startRecord, int maxRecords);
abstract member Fill : System.Data.DataSet * string * System.Data.IDataReader * int * int -> int
override this.Fill : System.Data.DataSet * string * System.Data.IDataReader * int * int -> int
Protected Overridable Function Fill (dataSet As DataSet, srcTable As String, dataReader As IDataReader, startRecord As Integer, maxRecords As Integer) As Integer

Parameter

dataSet
DataSet

Eine DataSet, die mit Datensätzen aufgefüllt werden soll.A DataSet to fill with records.

srcTable
String

Eine Zeichenfolge, die den Namen der Quelltabelle angibt.A string indicating the name of the source table.

dataReader
IDataReader

Eine Instanz von IDataReader.An instance of IDataReader.

startRecord
Int32

Der nullbasierte Startindex für die Startdatensatz.The zero-based index of the starting record.

maxRecords
Int32

Eine ganze Zahl, die die maximale Anzahl von Datensätzen angibt.An integer indicating the maximum number of records.

Gibt zurück

Int32

Die Anzahl der Zeilen, die dem DataSet erfolgreich hinzufügt bzw. darin aktualisiert wurden.The number of rows successfully added to or refreshed in the DataSet. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.This does not include rows affected by statements that do not return rows.

Hinweise

Weitere Informationen finden Sie in den Hinweisen zu System.Data.Common.DataAdapter.Fill(System.Data.DataSet) .See the remarks for System.Data.Common.DataAdapter.Fill(System.Data.DataSet) for additional information.

Weitere Informationen

Gilt für:

Produkt Introduced