DataAdapter.FillSchema Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Overload
| Nama | Deskripsi |
|---|---|
| FillSchema(DataSet, SchemaType, String, IDataReader) | |
| FillSchema(DataSet, SchemaType) |
DataTable Menambahkan ke yang ditentukan DataSet dan mengonfigurasi skema agar sesuai dengan yang ada di sumber data berdasarkan SchemaType. |
| FillSchema(DataTable, SchemaType, IDataReader) |
FillSchema(DataSet, SchemaType, String, IDataReader)
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- 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
yang DataTable akan diisi dari IDataReader.
- schemaType
- SchemaType
Salah SchemaType satu nilai.
- srcTable
- String
Nama tabel sumber yang akan digunakan untuk pemetaan tabel.
- dataReader
- IDataReader
yang IDataReader akan digunakan sebagai sumber data saat mengisi DataTable.
Mengembalikan
Referensi ke kumpulan DataTable objek yang ditambahkan ke DataSet.
- Atribut
Lihat juga
Berlaku untuk
FillSchema(DataSet, SchemaType)
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
DataTable Menambahkan ke yang ditentukan DataSet dan mengonfigurasi skema agar sesuai dengan yang ada di sumber data berdasarkan 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);
[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
Salah SchemaType satu nilai.
Mengembalikan
Objek DataTable yang berisi informasi skema yang dikembalikan dari sumber data.
Penerapan
- Atribut
Keterangan
Metode mengambil FillSchema skema dari sumber data menggunakan SelectCommand. Objek koneksi yang SelectCommand terkait dengan harus valid, tetapi tidak perlu dibuka. Jika koneksi ditutup sebelum FillSchema dipanggil, koneksi dibuka untuk mengambil data lalu ditutup. Jika koneksi terbuka sebelum FillSchema dipanggil, koneksi tetap terbuka.
FillSchema Operasi menambahkan DataTable ke tujuan DataSet. Kemudian menambahkan kolom ke DataColumnCollection , DataTabledan mengonfigurasi properti berikut DataColumn jika ada di sumber data:
AutoIncrement. Anda harus mengatur AutoIncrementStep dan AutoIncrementSeed secara terpisah.
FillSchema juga mengonfigurasi PrimaryKey properti dan Constraints sesuai dengan aturan berikut:
Jika satu atau beberapa kolom kunci utama dikembalikan oleh SelectCommand, kolom tersebut digunakan sebagai kolom kunci utama untuk DataTable.
Jika tidak ada kolom kunci utama yang dikembalikan tetapi kolom unik adalah, kolom unik digunakan sebagai kunci utama jika, dan hanya jika, semua kolom unik tidak dapat dipulihkan. Jika salah satu kolom dapat diubah ke null, UniqueConstraint ditambahkan ke ConstraintCollection, tetapi PrimaryKey properti tidak diatur.
Jika kolom kunci utama dan kolom unik dikembalikan, kolom kunci utama digunakan sebagai kolom kunci utama untuk DataTable.
Nota
Penyimpanan data yang mendasar dapat memungkinkan atribut kolom yang tidak didukung dalam DataColumn, yang menyebabkan beberapa atribut kolom tidak diterjemahkan dengan benar. Misalnya, SQL Server memungkinkan kolom identitas dengan jenis data tinyint sedangkan DataColumn hanya memungkinkan Int16, Int32, dan Int64 untuk mengatur AutoIncrement properti.
FillSchema secara diam-diam DataColumn mengabaikan kasus di mana tidak dapat mencerminkan sumber data secara akurat dan tidak melemparkan pengecualian.
Perhatikan bahwa kunci primer dan batasan unik ditambahkan ke ConstraintCollection sesuai dengan aturan sebelumnya, tetapi jenis batasan lainnya tidak ditambahkan.
Jika indeks berkluster unik ditentukan pada kolom atau kolom dalam tabel SQL Server dan batasan kunci utama ditentukan pada sekumpulan kolom terpisah, maka nama kolom dalam indeks berkluster akan dikembalikan. Untuk mengembalikan nama atau nama kolom kunci utama, gunakan petunjuk kueri dengan pernyataan SELECT yang menentukan nama indeks kunci utama. Untuk informasi selengkapnya tentang menentukan petunjuk kueri, lihat Petunjuk (Transact-SQL) - Kueri.
DataAdapter Jika menemukan kolom duplikat saat mengisi DataTable, kolom menghasilkan nama untuk kolom berikutnya, menggunakan pola "columnname1", "columnname2", "columnname3", dan sebagainya. Jika data masuk berisi kolom yang tidak disebutkan namanya, data tersebut ditempatkan sesuai DataSet dengan pola "Column1", "Column2", dan sebagainya. Saat beberapa tataan hasil ditambahkan ke setiap tataan DataSet hasil ditempatkan dalam tabel terpisah. Kumpulan hasil tambahan dinamai dengan menambahkan nilai integral ke nama tabel yang ditentukan (misalnya, "Tabel", "Table1", "Table2", dan sebagainya). Aplikasi yang menggunakan nama kolom dan tabel harus memastikan bahwa konflik dengan pola penamaan ini tidak terjadi.
FillSchema tidak mengembalikan baris apa pun. Fill Gunakan metode untuk menambahkan baris ke DataTable.
Nota
Saat menangani pernyataan SQL batch yang mengembalikan beberapa hasil, implementasi FillSchema untuk Penyedia Data .NET Framework untuk OLE DB mengambil informasi skema hanya untuk hasil pertama. Untuk mengambil informasi skema untuk beberapa hasil, gunakan Fill dengan diatur MissingSchemaAction ke AddWithKey.
Lihat juga
Berlaku untuk
FillSchema(DataTable, SchemaType, IDataReader)
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- DataAdapter.cs
- Sumber:
- 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
yang DataTable akan diisi dari IDataReader.
- schemaType
- SchemaType
Salah SchemaType satu nilai.
- dataReader
- IDataReader
yang IDataReader akan digunakan sebagai sumber data saat mengisi DataTable.
Mengembalikan
Objek DataTable yang berisi informasi skema yang dikembalikan dari sumber data.
- Atribut