DataTable에 열 추가(ADO.NET)

업데이트: November 2007

DataTable에는 테이블의 Columns 속성에서 참조하는 DataColumn 개체의 컬렉션이 포함되어 있습니다. 이 열 컬렉션과 모든 제약 조건을 함께 사용하여 테이블의 스키마나 구조를 정의합니다.

DataColumn 생성자를 사용하거나 테이블의 Columns 속성, 즉 DataColumnCollectionAdd 메서드를 호출하여 테이블 안에 DataColumn 개체를 만듭니다. Add 메서드에서는 선택적인 ColumnName, DataTypeExpression 인수를 승인하며, 컬렉션의 멤버로서 새 DataColumn을 만듭니다. 이 메서드에서는 또한 기존의 DataColumn 개체를 승인하여 컬렉션에 추가하며, 필요한 경우 추가된 DataColumn의 참조를 반환합니다. DataTable 개체는 특정 데이터 소스로 한정되지 않습니다. 따라서 DataColumn의 데이터 형식을 지정할 때는 .NET Framework 형식이 사용됩니다.

다음 예제에서는 DataTable에 네 개의 열을 추가합니다.

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));

이 예제에서는 CustID 열의 속성이 DBNull 값을 허용하지 않고 이 값을 고유 값으로 제약하도록 설정되어 있습니다. 그러나 CustID 열을 테이블의 기본 키 열로 정의하는 경우, AllowDBNull 속성은 false로 자동 설정되고 Unique 속성은 true로 자동 설정됩니다. 자세한 내용은 기본 키 정의(ADO.NET)를 참조하십시오.

주의:

열에 이름이 입력되지 않은 경우 해당 열을 DataColumnCollection에 추가하면 열 이름이 "Column1"로 시작하는 ColumnN인 증분 기본 이름으로 지정됩니다. 열 이름을 입력하는 경우에는 "ColumnN" 명명 규칙을 사용하지 않는 것이 좋습니다. 이 경우 DataColumnCollection에 있는 기존의 기본 열 이름과 충돌이 발생할 수 있습니다. 이미 있는 이름을 입력하면 예외가 throw됩니다.

참고 항목

참조

DataColumn

DataColumnCollection

DataTable

기타 리소스

DataTable 스키마 정의(ADO.NET)

DataTables(ADO.NET)