DataAdapter.FillSchema Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
FillSchema(DataSet, SchemaType, String, IDataReader) | |
FillSchema(DataSet, SchemaType) |
Ajoute un DataTable au DataSet spécifié et configure le schéma pour qu'il corresponde à celui de la source de données en se basant sur le SchemaType défini. |
FillSchema(DataTable, SchemaType, IDataReader) |
FillSchema(DataSet, SchemaType, String, IDataReader)
- Source:
- DataAdapter.cs
- Source:
- DataAdapter.cs
- Source:
- 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);
protected virtual System.Data.DataTable[] FillSchema (System.Data.DataSet dataSet, System.Data.SchemaType schemaType, string srcTable, System.Data.IDataReader dataReader);
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()
Paramètres
- dataSet
- DataSet
DataTable à remplir depuis IDataReader.
- schemaType
- SchemaType
Une des valeurs de l'objet SchemaType.
- srcTable
- String
Le nom de la table source à utiliser pour le mappage de table.
- dataReader
- IDataReader
IDataReader à utiliser comme source de données lors du remplissage du DataTable.
Retours
Référence à une collection d’objets DataTable qui ont été ajoutés à DataSet.
Voir aussi
S’applique à
FillSchema(DataSet, SchemaType)
- Source:
- DataAdapter.cs
- Source:
- DataAdapter.cs
- Source:
- DataAdapter.cs
Ajoute un DataTable au DataSet spécifié et configure le schéma pour qu'il corresponde à celui de la source de données en se basant sur le SchemaType défini.
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);
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);
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()
Paramètres
- schemaType
- SchemaType
Une des valeurs de l'objet SchemaType.
Retours
Objet DataTable qui contient les informations de schéma retournées par la source de données.
Implémente
Remarques
La FillSchema méthode récupère le schéma de la source de données à l’aide de SelectCommand. L’objet de connexion associé à doit SelectCommand être valide, mais il n’a pas besoin d’être ouvert. Si la connexion est fermée avant FillSchema d’être appelée, elle est ouverte pour récupérer des données, puis fermée. Si la connexion est ouverte avant FillSchema d’être appelée, elle reste ouverte.
Une FillSchema opération ajoute un DataTable à la destination DataSet. Il ajoute ensuite des colonnes au DataColumnCollection de DataTableet configure les propriétés suivantes DataColumn si elles existent au niveau de la source de données :
AutoIncrement. Vous devez définir AutoIncrementStep et AutoIncrementSeed séparément.
FillSchema configure également les PrimaryKey propriétés et Constraints selon les règles suivantes :
Si une ou plusieurs colonnes de clé primaire sont retournées par , SelectCommandelles sont utilisées comme colonnes de clé primaire pour .DataTable
Si aucune colonne clé primaire n’est retournée, mais que des colonnes uniques le sont, les colonnes uniques sont utilisées comme clé primaire si, et seulement si, toutes les colonnes uniques ne sont pas nuls. Si l’une des colonnes peut avoir la valeur Null, un UniqueConstraint est ajouté à , ConstraintCollectionmais la PrimaryKey propriété n’est pas définie.
Si les colonnes de clé primaire et les colonnes uniques sont retournées, les colonnes de clé primaire sont utilisées comme colonnes de clé primaire pour .DataTable
Notes
Le magasin de données sous-jacent peut autoriser les attributs de colonne qui ne sont pas pris en charge dans un DataColumn, ce qui entraîne la non-traduction correcte de certains attributs de colonne. Par exemple, SQL Server autorise une colonne d’identité avec un type de données tinyint, tandis qu’un DataColumn autorise uniquement Int16, Int32 et Int64 à avoir la AutoIncrement propriété définie. FillSchema
ignore silencieusement les cas où le DataColumn ne peut pas miroir avec précision la source de données et ne lève aucune exception.
Notez que les clés primaires et les contraintes uniques sont ajoutées à en ConstraintCollection fonction des règles précédentes, mais que d’autres types de contraintes ne sont pas ajoutés.
Si un index cluster unique est défini sur une ou plusieurs colonnes d’une table SQL Server et que la contrainte de clé primaire est définie sur un ensemble distinct de colonnes, les noms des colonnes de l’index cluster sont retournés. Pour renvoyer le ou les noms des colonnes de clé primaire, utilisez un indicateur de requête avec l’instruction SELECT qui spécifie le nom de l’index de clé primaire. Pour plus d’informations sur la spécification des indicateurs de requête, consultez Indicateurs (Transact-SQL) - Requête.
Si le DataAdapter rencontre des colonnes en double lors du remplissage d’un DataTable, il génère des noms pour les colonnes suivantes, à l’aide du modèle « columnname1 », « columnname2 », « columnname3 », etc. Si les données entrantes contiennent des colonnes sans nom, elles sont placées dans le DataSet en fonction du modèle « Column1 », « Column2 », etc. Lorsque plusieurs jeux de résultats sont ajoutés au DataSet jeu de résultats, chaque jeu de résultats est placé dans une table distincte. D’autres jeux de résultats sont nommés en ajoutant des valeurs intégrales au nom de table spécifié (par exemple, « Table », « Table1 », « Table2 », etc.). Les applications qui utilisent des noms de colonnes et de tables doivent s’assurer que les conflits avec ces modèles d’affectation de noms ne se produisent pas.
FillSchema ne retourne aucune ligne. Utilisez la Fill méthode pour ajouter des lignes à un DataTable.
Notes
Lors de la gestion des instructions SQL batch qui retournent plusieurs résultats, l’implémentation de FillSchema pour le fournisseur de données .NET Framework pour OLE DB récupère les informations de schéma pour le premier résultat uniquement. Pour récupérer des informations de schéma pour plusieurs résultats, utilisez Fill avec la MissingSchemaAction valeur définie sur AddWithKey
.
Voir aussi
S’applique à
FillSchema(DataTable, SchemaType, IDataReader)
- Source:
- DataAdapter.cs
- Source:
- DataAdapter.cs
- Source:
- DataAdapter.cs
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);
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
Paramètres
- dataTable
- DataTable
DataTable à remplir depuis IDataReader.
- schemaType
- SchemaType
Une des valeurs de l'objet SchemaType.
- dataReader
- IDataReader
IDataReader à utiliser comme source de données lors du remplissage du DataTable.
Retours
Objet DataTable qui contient les informations de schéma retournées par la source de données.