Teilen über


DataAdapter.Fill Methode

Definition

Fügt dem DataSet Zeilen hinzu oder aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.

Überlädt

Fill(DataSet)

Fügt dem DataSet Zeilen hinzu oder aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.

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.

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.

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.

Fill(DataSet)

Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs

Fügt dem DataSet Zeilen hinzu oder aktualisiert diese, um Übereinstimmung mit den Zeilen in der Datenquelle herzustellen.

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.

Gibt zurück

Die Anzahl der Zeilen, die dem DataSet erfolgreich hinzufügt bzw. darin aktualisiert wurden. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.

Implementiert

Hinweise

Die Fill -Methode ruft Zeilen aus der Datenquelle mithilfe der SELECT-Anweisung ab, die durch eine zugeordnete SelectCommand Eigenschaft angegeben wird. Das der SELECT-Anweisung zugeordnete Verbindungsobjekt muss gültig sein, muss aber nicht geöffnet sein. Wenn die Verbindung geschlossen wird, bevor Fill sie aufgerufen wird, wird sie geöffnet, um Daten abzurufen, und dann geschlossen. Wenn die Verbindung geöffnet ist, bevor Fill sie aufgerufen wird, bleibt sie geöffnet.

Der Fill Vorgang fügt die Zeilen dann Zielobjekten DataTable in hinzu DataSet, und erstellt die DataTable Objekte, sofern sie noch nicht vorhanden sind. Beim Erstellen von DataTable Objekten erstellt der Fill Vorgang normalerweise nur Spaltennamenmetadaten. Wenn die MissingSchemaAction -Eigenschaft jedoch auf AddWithKeyfestgelegt ist, werden auch die entsprechenden Primärschlüssel und Einschränkungen erstellt.

Wenn vom SelectCommand die Ergebnisse eines OUTER JOIN zurückgegeben werden, wird vom DataAdapter kein PrimaryKey -Wert für die resultierende DataTablefestgelegt. Sie müssen den Primärschlüssel explizit definieren, um sicherzustellen, dass doppelte Zeilen ordnungsgemäß aufgelöst werden. Weitere Informationen finden Sie unter Löschen von Primärschlüsseln.

Wenn der Datenadapter beim Auffüllen eines DataTableauf doppelte Spalten stößt, generiert er Namen für die nachfolgenden Spalten unter Verwendung des Musters "columnname1", "columnname2", "columnname3" usw. Wenn die eingehenden Daten unbenannte Spalten enthalten, werden sie platziert, der DataSet gemäß dem Muster "Column1", "Column2" usw. Wenn mehrere Resultsets hinzugefügt werden, wird jedes DataSet Resultset in einer separaten Tabelle platziert. Zusätzliche Resultsets werden benannt, indem integrale Werte an den angegebenen Tabellennamen angefügt werden (z. B. "Table", "Table1", "Table2" usw.). Anwendungen, die Spalten- und Tabellennamen verwenden, sollten sicherstellen, dass keine Konflikte mit diesen Benennungsmustern auftreten.

Wenn die SELECT-Anweisung, die zum Auffüllen verwendet DataSet wird, mehrere Ergebnisse zurückgibt, z. B. eine BATCH-SQL-Anweisung, wenn eines der Ergebnisse einen Fehler enthält, werden alle nachfolgenden Ergebnisse übersprungen und nicht hinzugefügt DataSet.

Sie können die Fill -Methode mehrmals für dieselbe DataTableverwenden. Wenn ein Primärschlüssel vorhanden ist, werden eingehende Zeilen mit übereinstimmenden Zeilen zusammengeführt, die bereits vorhanden sind. Wenn kein Primärschlüssel vorhanden ist, werden eingehende Zeilen an den DataTableangefügt.

Hinweis

Beim Behandeln von SQL-Batchanweisungen, die mehrere Ergebnisse zurückgeben, ruft die Implementierung von FillSchema für den .NET Framework Datenanbieter für OLE DB Schemainformationen nur für das erste Ergebnis ab. Um Schemainformationen für mehrere Ergebnisse abzurufen, verwenden Sie Fill mit festgelegt MissingSchemaAction auf AddWithKey.

Weitere Informationen

Gilt für:

Fill(DataTable, IDataReader)

Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs

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.

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.

dataReader
IDataReader

Eine Instanz von IDataReader.

Gibt zurück

Die Anzahl der Zeilen, die dem DataTable erfolgreich hinzufügt bzw. darin aktualisiert wurden. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.

Hinweise

Weitere Informationen finden Sie in den Hinweisen für DataAdapter.Fill(DataSet) .

Weitere Informationen

Gilt für:

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

Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs

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.

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 soll

dataReader
IDataReader

Eine Instanz von IDataReader.

startRecord
Int32

Der nullbasierte Startindex für die Startdatensatz.

maxRecords
Int32

Eine ganze Zahl, die die maximale Anzahl von Datensätzen angibt.

Gibt zurück

Die Anzahl der Zeilen, die dem DataTable erfolgreich hinzufügt bzw. darin aktualisiert wurden. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.

Hinweise

Weitere Informationen finden Sie in den Hinweisen für System.Data.Common.DataAdapter.Fill(System.Data.DataSet) .

Weitere Informationen

Gilt für:

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

Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs
Quelle:
DataAdapter.cs

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.

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.

srcTable
String

Eine Zeichenfolge, die den Namen der Quelltabelle angibt.

dataReader
IDataReader

Eine Instanz von IDataReader.

startRecord
Int32

Der nullbasierte Startindex für die Startdatensatz.

maxRecords
Int32

Eine ganze Zahl, die die maximale Anzahl von Datensätzen angibt.

Gibt zurück

Die Anzahl der Zeilen, die dem DataSet erfolgreich hinzufügt bzw. darin aktualisiert wurden. Dies schließt keine Zeilen ein, die von Anweisungen betroffen sind, die keine Zeilen zurückgeben.

Hinweise

Weitere Informationen finden Sie in den Hinweisen für System.Data.Common.DataAdapter.Fill(System.Data.DataSet) .

Weitere Informationen

Gilt für: