IDataAdapter.FillSchema(DataSet, SchemaType) Yöntem

Tanım

Belirtilen DataSet öğesine adlandırılmış bir DataTable "Tablo" ekler ve şemayı belirtilen temelinde veri kaynağındakiyle SchemaTypeeşleşecek şekilde yapılandırılır.

public:
 cli::array <System::Data::DataTable ^> ^ FillSchema(System::Data::DataSet ^ dataSet, System::Data::SchemaType schemaType);
public System.Data.DataTable[] FillSchema (System.Data.DataSet dataSet, System.Data.SchemaType schemaType);
abstract member FillSchema : System.Data.DataSet * System.Data.SchemaType -> System.Data.DataTable[]
Public Function FillSchema (dataSet As DataSet, schemaType As SchemaType) As DataTable()

Parametreler

dataSet
DataSet

DataSet veri kaynağındaki şemayla doldurulacak.

schemaType
SchemaType

Değerlerden SchemaType biri.

Döndürülenler

Veri kaynağından döndürülen şema bilgilerini içeren bir nesne dizisi DataTable .

Açıklamalar

FillSchema yöntemi, kullanarak veri kaynağından şemayı SelectCommandalır. ile ilişkili bağlantı nesnesinin SelectCommand geçerli olması gerekir, ancak açık olması gerekmez. Bağlantı çağrılmadan önce FillSchema kapatılırsa, verileri almak için açılır ve ardından kapatılır. Bağlantı çağrılmadan önce FillSchema açıksa açık kalır.

bir FillSchema işlem hedefine DataSetbir DataTable ekler. Ardından sütunları öğesine ekler DataColumnCollectionDataTable ve veri kaynağında varsa aşağıdaki DataColumn özellikleri yapılandırılır:

FillSchemaayrıca ve Constraints özelliklerini aşağıdaki kurallara göre yapılandırılırPrimaryKey:

  • tarafından bir veya daha fazla birincil anahtar sütunu döndürülürse SelectCommand, bunlar için DataTablebirincil anahtar sütunları olarak kullanılır.

  • Hiçbir birincil anahtar sütunu döndürülmezse ancak benzersiz sütunlar döndürülmezse, tüm benzersiz sütunlar null atanamazsa, benzersiz sütunlar birincil anahtar olarak kullanılır. Sütunlardan herhangi biri null atanabilirse, öğesine ConstraintCollectionbir UniqueConstraint eklenir, ancak PrimaryKey özelliği ayarlanmaz.

  • Hem birincil anahtar sütunları hem de benzersiz sütunlar döndürülürse, birincil anahtar sütunları için DataTablebirincil anahtar sütunları olarak kullanılır.

Birincil anahtarların ve benzersiz kısıtlamaların önceki kurallara göre öğesine eklendiğini ConstraintCollection , ancak diğer kısıtlama türlerinin eklenmediğini unutmayın.

SQL Server tablosundaki bir sütunda veya sütunlarda benzersiz kümelenmiş dizin tanımlanmışsa ve birincil anahtar kısıtlaması ayrı bir sütun kümesinde tanımlanmışsa, kümelenmiş dizindeki sütunların adları döndürülür. Birincil anahtar sütunlarının adını veya adlarını döndürmek için, birincil anahtar dizininin adını belirten SELECT deyimiyle bir sorgu ipucu kullanın. Sorgu ipuçlarını belirtme hakkında daha fazla bilgi için bkz. İpuçları (Transact-SQL) - Sorgu.

IDataAdapter bir doldurma DataTablesırasında yinelenen sütunlarla karşılaşırsa, "columnname1", "columnname2", "columnname3" desenini kullanarak ardışık sütunlar için adlar oluşturur. Gelen veriler adlandırılmamış sütunlar içeriyorsa , "Sütun1", "Sütun2" desenine göre vb. eklenir DataSet . öğesine DataSetbirden çok sonuç kümesi eklendiğinde, her sonuç kümesi ayrı bir tabloya konur. Ek sonuç kümeleri belirtilen tablo adına integral değerleri eklenerek adlandırılır (örneğin, "Tablo", "Tablo1", "Tablo2" vb.). Uygulamalar, bu adlandırma desenleriyle çakışma olmadığından emin olmak için sütun ve tablo adlarını kullanırken dikkatli olmalıdır.

FillSchema satır döndürmez. bir öğesine Fill satır eklemek için DataTableyöntemini kullanın.

Şunlara uygulanır

Ayrıca bkz.