DataAdapter.FillSchema Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
FillSchema(DataSet, SchemaType, String, IDataReader) | |
FillSchema(DataSet, SchemaType) |
Agrega un elemento DataTable denominado "Table" para el elemento DataSet especificado y configura el esquema para que coincida con el origen de datos basado en el SchemaType. |
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()
Parámetros
- dataSet
- DataSet
Objeto DataTable que se va a rellenar desde la interfaz IDataReader.
- schemaType
- SchemaType
Uno de los valores de SchemaType.
- srcTable
- String
Nombre de la tabla de origen que se utilizará para la asignación de tabla.
- dataReader
- IDataReader
Interfaz IDataReader que se va a utilizar como el origen de datos al rellenar el objeto DataTable.
Devoluciones
Referencia a una colección de objetos DataTable que se agregaron al DataSet.
Consulte también
Se aplica a
FillSchema(DataSet, SchemaType)
- Source:
- DataAdapter.cs
- Source:
- DataAdapter.cs
- Source:
- DataAdapter.cs
Agrega un elemento DataTable denominado "Table" para el elemento DataSet especificado y configura el esquema para que coincida con el origen de datos basado en el SchemaType.
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()
Parámetros
- schemaType
- SchemaType
Uno de los valores de SchemaType.
Devoluciones
Objeto DataTable que contiene la información de esquema devuelta desde el origen de datos.
Implementaciones
Comentarios
El FillSchema método recupera el esquema del origen de datos mediante SelectCommand. El objeto de conexión asociado a SelectCommand debe ser válido, pero no es necesario abrirlo. Si se cierra la conexión antes FillSchema de llamar a , se abre para recuperar datos y, a continuación, se cierra. Si la conexión está abierta antes FillSchema de llamar a , permanece abierta.
Una FillSchema operación agrega un DataTable objeto al destino DataSet. A continuación, agrega columnas a DataColumnCollection de DataTabley configura las siguientes DataColumn propiedades si existen en el origen de datos:
AutoIncrement. Debe establecer AutoIncrementStep y AutoIncrementSeed por separado.
FillSchema también configura las PrimaryKey propiedades y Constraints según las reglas siguientes:
Si una o varias columnas de clave principal se devuelven mediante SelectCommand, se usan como columnas de clave principal para .DataTable
Si no se devuelve ninguna columna de clave principal, pero las columnas únicas son , las columnas únicas se usan como clave principal si, y solo si, todas las columnas únicas son noullables. Si cualquiera de las columnas admite valores NULL, se agrega a UniqueConstraintConstraintCollection, pero la PrimaryKey propiedad no se establece.
Si se devuelven columnas de clave principal y columnas únicas, las columnas de clave principal se usan como columnas de clave principal para .DataTable
Nota
El almacén de datos subyacente puede permitir atributos de columna que no se admiten en , DataColumnlo que hace que algunos atributos de columna no se traduzcan correctamente. Por ejemplo, SQL Server permite que una columna de identidad con un tipo de datos tinyint, mientras que un DataColumn solo permite que Int16, Int32 e Int64 tengan establecida la AutoIncrement propiedad . FillSchema
omite silenciosamente los casos en los que no DataColumn puede reflejar con precisión el origen de datos y no produce ninguna excepción.
Tenga en cuenta que las claves principales y las restricciones únicas se agregan a según ConstraintCollection las reglas anteriores, pero no se agregan otros tipos de restricción.
Si se define un índice clúster único en una columna o columnas de una tabla SQL Server y la restricción de clave principal se define en un conjunto independiente de columnas, se devolverán los nombres de las columnas del índice agrupado. Para devolver el nombre o los nombres de las columnas de clave principal, use una sugerencia de consulta con la instrucción SELECT que especifica el nombre del índice de clave principal. Para obtener más información sobre cómo especificar sugerencias de consulta, vea Sugerencias (Transact-SQL): consulta.
DataAdapter Si encuentra columnas duplicadas al rellenar un DataTable, genera nombres para las columnas posteriores, utilizando el patrón "columnname1", "columnname2", "columnname3", etc. Si los datos entrantes contienen columnas sin nombre, se colocan en según DataSet el patrón "Column1", "Column2", etc. Cuando se agregan varios conjuntos de resultados al DataSet conjunto de resultados se coloca en una tabla independiente. Los conjuntos de resultados adicionales se denominan anexando valores enteros al nombre de tabla especificado (por ejemplo, "Table", "Table1", "Table2", etc.). Las aplicaciones que usan nombres de columna y tabla deben asegurarse de que no se produzcan conflictos con estos patrones de nomenclatura.
FillSchema no devuelve ninguna fila. Use el Fill método para agregar filas a .DataTable
Nota
Al controlar instrucciones SQL por lotes que devuelven varios resultados, la implementación de para el proveedor de FillSchema datos de .NET Framework para OLE DB recupera información de esquema solo para el primer resultado. Para recuperar información de esquema para varios resultados, use Fill con el MissingSchemaAction establecido en AddWithKey
.
Consulte también
Se aplica a
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
Parámetros
- dataTable
- DataTable
Objeto DataTable que se va a rellenar desde la interfaz IDataReader.
- schemaType
- SchemaType
Uno de los valores de SchemaType.
- dataReader
- IDataReader
Interfaz IDataReader que se va a utilizar como el origen de datos al rellenar el objeto DataTable.
Devoluciones
Objeto DataTable que contiene la información de esquema devuelta desde el origen de datos.