DataTable’a Sütun Ekleme

ADataTable, tablonun Columns özelliği tarafından başvuruda bulunan bir nesne koleksiyonu DataColumn içerir. Tüm kısıtlamalarla birlikte bu sütun koleksiyonu, tablonun şemasını veya yapısını tanımlar.

DataColumn oluşturucuyu kullanarak veya bir olan tablonun Columns özelliğinin Add yöntemini çağırarak bir tablo DataColumnCollectioniçinde DataColumn nesneleri oluşturursunuz. Add yöntemi isteğe bağlı ColumnName, DataType ve Expression bağımsız değişkenlerini kabul eder ve koleksiyonun üyesi olarak yeni bir DataColumn oluşturur. Ayrıca var olan bir DataColumn nesnesini kabul eder ve koleksiyona ekler ve istenirse eklenen DataColumn'a bir başvuru döndürür. DataTable nesneleri herhangi bir veri kaynağına özgü olmadığından, DataColumn'un veri türü belirtilirken .NET Framework türleri kullanılır.

Aşağıdaki örnek bir DataTable'a dört sütun ekler.

Dim workTable As DataTable = New DataTable("Customers")  
  
Dim workCol As DataColumn = workTable.Columns.Add( _  
    "CustID", Type.GetType("System.Int32"))  
workCol.AllowDBNull = false  
workCol.Unique = true  
  
workTable.Columns.Add("CustLName", Type.GetType("System.String"))  
workTable.Columns.Add("CustFName", Type.GetType("System.String"))  
workTable.Columns.Add("Purchases", Type.GetType("System.Double"))  
DataTable workTable = new DataTable("Customers");  
  
DataColumn workCol = workTable.Columns.Add("CustID", typeof(Int32));  
workCol.AllowDBNull = false;  
workCol.Unique = true;  
  
workTable.Columns.Add("CustLName", typeof(String));  
workTable.Columns.Add("CustFName", typeof(String));  
workTable.Columns.Add("Purchases", typeof(Double));  

Örnekte, CustID sütununun özelliklerinin DBNull değerlerine izin vermeyecek ve değerleri benzersiz olacak şekilde kısıtlanacak şekilde ayarlandığına dikkat edin. Ancak, CustID sütununu tablonun birincil anahtar sütunu olarak tanımlarsanız AllowDBNull özelliği otomatik olarak false olarak ayarlanır ve Unique özelliği otomatik olarak true olarak ayarlanır. Daha fazla bilgi için bkz . Birincil Anahtarları Tanımlama.

Dikkat

Bir sütun için sütun adı sağlanmazsa, sütuna DataColumnCollection'a eklendiğinde "Sütun1" ile başlayan artımlı varsayılan N Sütunu adı verilir. Bir sütun adı sağladığınızda "SütunN" adlandırma kuralından kaçınmanızı öneririz, çünkü sağladığınız ad DataColumnCollection'daki mevcut bir varsayılan sütun adıyla çakışabilir. Sağlanan ad zaten varsa, bir özel durum oluşturulur.

içinde olarak DataColumnDataType kullanıyorsanızXElement, verilerde DataTableokurken XML serileştirmesi çalışmaz. Örneğin, yöntemini kullanarak DataTable.WriteXml bir XmlDocument yazarsanız, XML'ye seri hale getirildiğinde içinde XElementek bir üst düğüm vardır. Bu soruna geçici bir çözüm bulmak için yerine türünü XElementkullanınSqlXml. ReadXml ve WriteXml ile SqlXmldoğru şekilde çalışın.

Ayrıca bkz.