DataAdapter.FillSchema Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
| Name | Beschreibung |
|---|---|
| FillSchema(DataSet, SchemaType, String, IDataReader) | |
| FillSchema(DataSet, SchemaType) |
Fügt dem angegebenen Objekt einen DataTable Wert hinzu und konfiguriert das Schema so, dass es dem in der Datenquelle basierend auf dem angegebenen Entspricht entsprichtSchemaType.DataSet |
| FillSchema(DataTable, SchemaType, IDataReader) |
FillSchema(DataSet, SchemaType, String, IDataReader)
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
protected:
virtual cli::array <System::Data::DataTable ^> ^ FillSchema(System::Data::DataSet ^ dataSet, System::Data::SchemaType schemaType, System::String ^ srcTable, System::Data::IDataReader ^ dataReader);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("dataReader's schema table types cannot be statically analyzed.")]
protected virtual System.Data.DataTable[] FillSchema(System.Data.DataSet dataSet, System.Data.SchemaType schemaType, string srcTable, System.Data.IDataReader dataReader);
protected virtual System.Data.DataTable[] FillSchema(System.Data.DataSet dataSet, System.Data.SchemaType schemaType, string srcTable, System.Data.IDataReader dataReader);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("dataReader's schema table types cannot be statically analyzed.")>]
abstract member FillSchema : System.Data.DataSet * System.Data.SchemaType * string * System.Data.IDataReader -> System.Data.DataTable[]
override this.FillSchema : System.Data.DataSet * System.Data.SchemaType * string * System.Data.IDataReader -> System.Data.DataTable[]
abstract member FillSchema : System.Data.DataSet * System.Data.SchemaType * string * System.Data.IDataReader -> System.Data.DataTable[]
override this.FillSchema : System.Data.DataSet * System.Data.SchemaType * string * System.Data.IDataReader -> System.Data.DataTable[]
Protected Overridable Function FillSchema (dataSet As DataSet, schemaType As SchemaType, srcTable As String, dataReader As IDataReader) As DataTable()
Parameter
- dataSet
- DataSet
Der DataTable aus dem IDataReader.
- schemaType
- SchemaType
Einer der SchemaType Werte.
- srcTable
- String
Der Name der Quelltabelle, die für die Tabellenzuordnung verwendet werden soll.
- dataReader
- IDataReader
Wird IDataReader beim Ausfüllen der DataTableDatenquelle als Datenquelle verwendet.
Gibt zurück
Ein Verweis auf eine Auflistung von DataTable Objekten, die dem DataSetObjekt hinzugefügt wurden.
- Attribute
Weitere Informationen
Gilt für:
FillSchema(DataSet, SchemaType)
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
Fügt dem angegebenen Objekt einen DataTable Wert hinzu und konfiguriert das Schema so, dass es dem in der Datenquelle basierend auf dem angegebenen Entspricht entsprichtSchemaType.DataSet
public:
virtual cli::array <System::Data::DataTable ^> ^ FillSchema(System::Data::DataSet ^ dataSet, System::Data::SchemaType schemaType);
public:
abstract cli::array <System::Data::DataTable ^> ^ FillSchema(System::Data::DataSet ^ dataSet, System::Data::SchemaType schemaType);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("IDataReader's (built from adapter commands) schema table types cannot be statically analyzed.")]
public virtual System.Data.DataTable[] FillSchema(System.Data.DataSet dataSet, System.Data.SchemaType schemaType);
public virtual System.Data.DataTable[] FillSchema(System.Data.DataSet dataSet, System.Data.SchemaType schemaType);
public abstract System.Data.DataTable[] FillSchema(System.Data.DataSet dataSet, System.Data.SchemaType schemaType);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("IDataReader's (built from adapter commands) schema table types cannot be statically analyzed.")>]
abstract member FillSchema : System.Data.DataSet * System.Data.SchemaType -> System.Data.DataTable[]
override this.FillSchema : System.Data.DataSet * System.Data.SchemaType -> System.Data.DataTable[]
abstract member FillSchema : System.Data.DataSet * System.Data.SchemaType -> System.Data.DataTable[]
override this.FillSchema : System.Data.DataSet * System.Data.SchemaType -> System.Data.DataTable[]
abstract member FillSchema : System.Data.DataSet * System.Data.SchemaType -> System.Data.DataTable[]
Public Overridable Function FillSchema (dataSet As DataSet, schemaType As SchemaType) As DataTable()
Public MustOverride Function FillSchema (dataSet As DataSet, schemaType As SchemaType) As DataTable()
Parameter
- schemaType
- SchemaType
Einer der SchemaType Werte.
Gibt zurück
Ein DataTable Objekt, das Schemainformationen enthält, die von der Datenquelle zurückgegeben werden.
Implementiert
- Attribute
Hinweise
Die FillSchema Methode ruft das Schema aus der Datenquelle mithilfe der SelectCommand. Das dem SelectCommand Objekt zugeordnete Verbindungsobjekt muss gültig sein, muss jedoch nicht geöffnet sein. Wenn die Verbindung vor dem FillSchema Aufruf geschlossen wird, wird sie geöffnet, um Daten abzurufen und dann zu schließen. Wenn die Verbindung geöffnet ist, bevor FillSchema sie aufgerufen wird, bleibt sie geöffnet.
Ein FillSchema Vorgang fügt dem Ziel DataSeteinen DataTable hinzu. Anschließend werden dem DataColumnCollection Element DataTableSpalten hinzugefügt und die folgenden DataColumn Eigenschaften konfiguriert, wenn sie in der Datenquelle vorhanden sind:
AutoIncrement. Sie müssen festlegen und AutoIncrementSeed separat festlegenAutoIncrementStep.
FillSchema konfiguriert außerdem die PrimaryKey eigenschaften Constraints entsprechend den folgenden Regeln:
Wenn eine oder mehrere Primärschlüsselspalten von der SelectCommandZurückgegeben werden, werden sie als Primärschlüsselspalten für die DataTable.
Wenn keine Primärschlüsselspalten zurückgegeben werden, aber eindeutige Spalten sind, werden die eindeutigen Spalten als Primärschlüssel verwendet, wenn und nur dann, wenn alle eindeutigen Spalten nicht ullierbar sind. Wenn eine der Spalten nullwertebar ist, wird eine UniqueConstraint der ConstraintCollectionSpalten hinzugefügt, die Eigenschaft wird jedoch PrimaryKey nicht festgelegt.
Wenn sowohl Primärschlüsselspalten als auch eindeutige Spalten zurückgegeben werden, werden die Primärschlüsselspalten als Primärschlüsselspalten für die DataTable.
Hinweis
Der zugrunde liegende Datenspeicher kann Spaltenattribute zulassen, die in einem DataColumnNicht unterstützt werden, was bewirkt, dass einige Spaltenattribute nicht ordnungsgemäß übersetzt werden. Beispielsweise ermöglicht SQL Server eine Identitätsspalte mit einem Datentyp "tinyint", während nur DataColumn "Int16", "Int32" und "Int64" den AutoIncrement Eigenschaftensatz aufweisen können.
FillSchema Ignoriert im Hintergrund Fälle, in denen die DataColumn Datenquelle nicht korrekt gespiegelt werden kann, und löst keine Ausnahme aus.
Beachten Sie, dass Primärschlüssel und eindeutige Einschränkungen den ConstraintCollection vorherigen Regeln hinzugefügt werden, andere Einschränkungstypen werden jedoch nicht hinzugefügt.
Wenn ein eindeutiger gruppierter Index für eine Spalte oder Spalten in einer SQL Server-Tabelle definiert ist und die Primärschlüsseleinschränkung für einen separaten Satz von Spalten definiert wird, werden die Namen der Spalten im gruppierten Index zurückgegeben. Um den Namen oder die Namen der Primärschlüsselspalten zurückzugeben, verwenden Sie einen Abfragehinweis mit der SELECT-Anweisung, die den Namen des Primärschlüsselindex angibt. Weitere Informationen zum Angeben von Abfragehinweisen finden Sie unter Hinweise (Transact-SQL) – Abfrage.
Wenn beim DataAdapter Auffüllen doppelter DataTableSpalten doppelte Spalten auftreten, generiert sie Namen für die nachfolgenden Spalten, wobei das Muster "Spaltenname1", "Spaltenname2", "Spaltenname3" usw. verwendet wird. Wenn die eingehenden Daten unbenannte Spalten enthalten, werden sie gemäß dem DataSet Muster "Spalte1", "Spalte2" usw. in das Muster eingefügt. Wenn dem resultset mehrere Resultsets hinzugefügt DataSet werden, wird in einer separaten Tabelle platziert. Zusätzliche Resultsets werden durch Anfügen integraler Werte an den angegebenen Tabellennamen benannt (z. B. "Tabelle", "Tabelle1", "Tabelle2" usw.). Anwendungen, die Spalten- und Tabellennamen verwenden, sollten sicherstellen, dass Konflikte mit diesen Benennungsmustern nicht auftreten.
FillSchema gibt keine Zeilen zurück. Verwenden Sie die Fill Methode zum Hinzufügen von Zeilen zu einem DataTable.
Hinweis
Bei der Verarbeitung von SQL-Batchanweisungen, die mehrere Ergebnisse zurückgeben, ruft die Implementierung FillSchema des .NET Framework-Datenanbieters für OLE DB Schemainformationen nur für das erste Ergebnis ab. Verwenden Sie Fill zum Abrufen von Schemainformationen für mehrere Ergebnisse den MissingSchemaAction Satz auf AddWithKey.
Weitere Informationen
Gilt für:
FillSchema(DataTable, SchemaType, IDataReader)
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
- Quelle:
- DataAdapter.cs
protected:
virtual System::Data::DataTable ^ FillSchema(System::Data::DataTable ^ dataTable, System::Data::SchemaType schemaType, System::Data::IDataReader ^ dataReader);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("dataReader's schema table types cannot be statically analyzed.")]
protected virtual System.Data.DataTable? FillSchema(System.Data.DataTable dataTable, System.Data.SchemaType schemaType, System.Data.IDataReader dataReader);
protected virtual System.Data.DataTable? FillSchema(System.Data.DataTable dataTable, System.Data.SchemaType schemaType, System.Data.IDataReader dataReader);
protected virtual System.Data.DataTable FillSchema(System.Data.DataTable dataTable, System.Data.SchemaType schemaType, System.Data.IDataReader dataReader);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("dataReader's schema table types cannot be statically analyzed.")>]
abstract member FillSchema : System.Data.DataTable * System.Data.SchemaType * System.Data.IDataReader -> System.Data.DataTable
override this.FillSchema : System.Data.DataTable * System.Data.SchemaType * System.Data.IDataReader -> System.Data.DataTable
abstract member FillSchema : System.Data.DataTable * System.Data.SchemaType * System.Data.IDataReader -> System.Data.DataTable
override this.FillSchema : System.Data.DataTable * System.Data.SchemaType * System.Data.IDataReader -> System.Data.DataTable
Protected Overridable Function FillSchema (dataTable As DataTable, schemaType As SchemaType, dataReader As IDataReader) As DataTable
Parameter
- dataTable
- DataTable
Der DataTable aus dem IDataReader.
- schemaType
- SchemaType
Einer der SchemaType Werte.
- dataReader
- IDataReader
Wird IDataReader beim Ausfüllen der DataTableDatenquelle als Datenquelle verwendet.
Gibt zurück
Ein DataTable Objekt, das Schemainformationen enthält, die von der Datenquelle zurückgegeben werden.
- Attribute