Freigeben über


IDataAdapter.Fill-Methode

Fügt dem DataSet unter Verwendung des DataSet-Namens Zeilen hinzu bzw. aktualisiert diese, um eine Übereinstimmung mit den Zeilen in der Datenquelle zu erzielen, und erstellt eine DataTable mit der Bezeichnung "Table".

Namespace: System.Data
Assembly: System.Data (in system.data.dll)

Syntax

'Declaration
Function Fill ( _
    dataSet As DataSet _
) As Integer
'Usage
Dim instance As IDataAdapter
Dim dataSet As DataSet
Dim returnValue As Integer

returnValue = instance.Fill(dataSet)
int Fill (
    DataSet dataSet
)
int Fill (
    DataSet^ dataSet
)
int Fill (
    DataSet dataSet
)
function Fill (
    dataSet : DataSet
) : int

Parameter

  • dataSet
    Ein DataSet, das mit Datensätzen und bei Bedarf mit einem Schema gefüllt wird.

Rückgabewert

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

Hinweise

Fill ruft Zeilen aus der Datenquelle mithilfe der SELECT-Anweisung ab, die durch eine zugeordnete SelectCommand-Eigenschaft angegeben ist. Das der SELECT-Anweisung zugeordnete Verbindungsobjekt muss gültig, jedoch nicht geöffnet sein. Wenn die Verbindung vor dem Aufruf von Fill geschlossen ist, wird sie zum Abrufen der Daten geöffnet und anschließend geschlossen. Wenn die Verbindung vor dem Aufruf von Fill geöffnet ist, bleibt sie weiterhin geöffnet.

Anschließend werden die Zeilen mithilfe der Fill-Operation Ziel-DataTable-Objekten im DataSet hinzugefügt, wobei die DataTable-Objekte erstellt werden, wenn sie nicht bereits vorhanden sind. Beim Erstellen von DataTable-Objekten werden von der Fill-Operation i. d. R. nur Metadaten für Spaltennamen erstellt. Wenn die MissingSchemaAction-Eigenschaft auf AddWithKey festgelegt ist, werden jedoch auch entsprechende Primärschlüssel und Einschränkungen erstellt.

Wenn der SelectCommand die Ergebnisse von OUTER JOIN zurückgibt, legt DataAdapter keinen PrimaryKey-Wert für die resultierende DataTable fest. Sie müssen den Primärschlüssel explizit definieren, um sicherzustellen, dass doppelte Zeilen richtig aufgelöst werden. Weitere Informationen finden Sie unter Definieren eines Primärschlüssels für eine Tabelle.

Wenn der IDataAdapter beim Füllen einer DataTable mehrfach vorhandene Spalten findet, generiert er für die jeweils folgenden Spalten Namen nach dem Muster "Spaltenname1", "Spaltenname2", "Spaltenname3" usw. Wenn die eingehenden Daten unbenannte Spalten enthalten, werden diese im DataSet entsprechend dem Muster "Spalte1", "Spalte2" usw. eingefügt. Wenn dem DataSet mehrere Resultsets hinzugefügt werden, wird jedes Resultset in einer separaten Tabelle platziert. Zusätzliche Resultsets werden benannt, indem dem angegebenen Tabellennamen ganzzahlige Werte angefügt werden (z. B. "Tabelle", "Tabelle1", "Tabelle2" usw.). Beim Verwenden von Spalten- und Tabellennamen in Anwendungen muss darauf geachtet werden, dass keine Konflikte mit diesen Benennungsmustern auftreten.

Wenn die zum Füllen des DataSet verwendete SELECT-Anweisung mehrere Ergebnisse zurückgibt, z. B. bei SQL-Batchanweisungen, und eines der Ergebnisse einen Fehler enthält, werden alle nachfolgenden Ergebnisse übersprungen und dem DataSet nicht hinzugefügt.

Sie können die Fill-Methode mehrmals für dieselbe DataTable verwenden. Wenn ein Primärschlüssel vorhanden ist, werden eingehende Zeilen mit bereits vorhandenen entsprechenden Zeilen zusammengeführt. Wenn kein Primärschlüssel vorhanden ist, werden eingehende Zeilen an die DataTable angefügt.

Hinweis

Beim Behandeln von SQL-Batchanweisungen, die mehrere Ergebnisse zurückgeben, ruft die Implementierung von Fill und FillSchema für einen .NET Framework-Datenanbieter nur für das erste Ergebnis Schemainformationen ab.

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

IDataAdapter-Schnittstelle
IDataAdapter-Member
System.Data-Namespace
FillSchema