ADO.NET 데이터 집합ADO.NET DataSets

DataSet 개체는 ADO.NET를 사용 하 여 연결이 끊어진 분산 데이터 시나리오를 지 원하는 데 중요 합니다.The DataSet object is central to supporting disconnected, distributed data scenarios with ADO.NET. 데이터 집합 은 데이터 원본에 관계 없이 일관 된 관계형 프로그래밍 모델을 제공 하는 데이터의 메모리 상주 표현입니다.The DataSet is a memory-resident representation of data that provides a consistent relational programming model regardless of the data source. 이 개체는 다양한 여러 데이터 소스에 사용하거나 XML 데이터에 사용할 수 있을 뿐 아니라 이 개체를 사용하여 응용 프로그램의 로컬 데이터를 관리할 수도 있습니다.It can be used with multiple and differing data sources, with XML data, or to manage data local to the application. 데이터 집합 은 관련 테이블, 제약 조건 및 테이블 간의 관계를 포함 하 여 전체 데이터 집합을 나타냅니다.The DataSet represents a complete set of data, including related tables, constraints, and relationships among the tables. 다음 그림에서는 데이터 집합 개체 모델을 보여 줍니다.The following illustration shows the DataSet object model.

ADO.Net graphicADO.Net graphic
DataSet 개체 모델DataSet Object Model

데이터 집합 의 메서드와 개체는 관계형 데이터베이스 모델의 메서드와 일치 합니다.The methods and objects in a DataSet are consistent with those in the relational database model.

데이터 집합 은 해당 콘텐츠를 xml로 유지 하 고 해당 스키마를 XSD (xml 스키마 정의 언어) 스키마로 다시 로드할 수도 있습니다.The DataSet can also persist and reload its contents as XML, and its schema as XML schema definition language (XSD) schema. 자세한 내용은 데이터 세트에서 XML 사용을 참조하세요.For more information, see Using XML in a DataSet.

DataTableCollectionThe DataTableCollection

ADO.NET 데이터 집합DataTable 개체가 나타내는 0 개 이상의 테이블 컬렉션을 포함 합니다.An ADO.NET DataSet contains a collection of zero or more tables represented by DataTable objects. DataTableCollection데이터 집합의 모든 DataTable 개체가 포함 되어 있습니다.The DataTableCollection contains all the DataTable objects in a DataSet.

DataTableSystem.Data 네임 스페이스에 정의 되며 메모리 상주 데이터의 단일 테이블을 나타냅니다.A DataTable is defined in the System.Data namespace and represents a single table of memory-resident data. 여기에는 DataColumnCollection에 의해 표현되는 열의 컬렉션과 ConstraintCollection에 의해 표현되는 제약 조건의 컬렉션이 포함됩니다. 이 두 컬렉션은 테이블의 스키마를 정의합니다.It contains a collection of columns represented by a DataColumnCollection, and constraints represented by a ConstraintCollection, which together define the schema of the table. DataTable 에는 DataRowCollection테이블의 데이터를 포함 하는가 나타내는 행의 컬렉션도 포함 됩니다.A DataTable also contains a collection of rows represented by the DataRowCollection, which contains the data in the table. 이와 함께 DataRow는 현재 버전과 원래 버전을 모두 보유하므로 행에 저장된 값에 대한 변경 사항을 식별할 수 있습니다.Along with its current state, a DataRow retains both its current and original versions to identify changes to the values stored in the row.

DataView 클래스The DataView Class

DataView는 데이터 바인딩 응용 프로그램에서 자주 사용되는 기능으로, 이 기능을 사용하면 DataTable에 저장되어 있는 데이터에 대해 서로 다른 뷰를 만들 수 있습니다.A DataView enables you to create different views of the data stored in a DataTable, a capability that is often used in data-binding applications. DataView를 사용하면 테이블의 데이터를 여러 정렬 순서로 노출시킬 수 있으며 행 상태에 따라 또는 필터 식을 기준으로 데이터를 필터링할 수 있습니다.Using a DataView, you can expose the data in a table with different sort orders, and you can filter the data by row state or based on a filter expression. 자세한 내용은 Dataview합니다.For more information, see DataViews.

DataRelationCollectionThe DataRelationCollection

데이터 집합 은 해당 DataRelationCollection 개체의 관계를 포함 합니다.A DataSet contains relationships in its DataRelationCollection object. DataRelation 개체로 표시 되는 관계는 한 datatable 의 행을 다른 datatable의 행과 연결 합니다.A relationship, represented by the DataRelation object, associates rows in one DataTable with rows in another DataTable. 이 관계는 관계형 데이터베이스의 기본 키 열과 외래 키 열 간에 존재하는 조인 경로와 유사합니다.A relationship is analogous to a join path that might exist between primary and foreign key columns in a relational database. DataRelation데이터 집합의 두 테이블에서 일치 하는 열을 식별 합니다.A DataRelation identifies matching columns in two tables of a DataSet.

관계는 데이터 집합의 한 테이블에서 다른 테이블로의 탐색을 가능 하 게 합니다.Relationships enable navigation from one table to another in a DataSet. DataRelation 의 필수 요소는 관계의 이름, 관련 되는 테이블의 이름 및 각 테이블에 있는 관련 열입니다.The essential elements of a DataRelation are the name of the relationship, the name of the tables being related, and the related columns in each table. DataColumn 개체의 배열을 키 열로 지정하면 테이블당 두 개 이상의 열에 대한 관계를 빌드할 수 있습니다.Relationships can be built with more than one column per table by specifying an array of DataColumn objects as the key columns. DataRelationCollection관계를 추가 하는 경우 필요에 따라 UniqueKeyConstraintForeignKeyConstraint 를 추가 하 여 관련 열 값이 변경 될 때 무결성 제약 조건을 적용할 수 있습니다.When you add a relationship to the DataRelationCollection, you can optionally add a UniqueKeyConstraint and a ForeignKeyConstraint to enforce integrity constraints when changes are made to related column values.

자세한 내용은 DataRelations 추가를 참조 하세요.For more information, see Adding DataRelations.

XMLXML

XML 스트림 또는 문서에서 데이터 집합 을 채울 수 있습니다.You can fill a DataSet from an XML stream or document. XML 스트림이나 문서를 사용 하 여 데이터, 스키마 정보 또는 두 가지 모두를 데이터 집합 에 제공할 수 있습니다.You can use the XML stream or document to supply to the DataSet either data, schema information, or both. XML 스트림이나 문서에서 제공 되는 정보를 데이터 집합에 이미 있는 기존 데이터 나 스키마 정보와 결합할 수 있습니다.The information supplied from the XML stream or document can be combined with existing data or schema information already present in the DataSet. 자세한 내용은 데이터 세트에서 XML 사용을 참조하세요.For more information, see Using XML in a DataSet.

ExtendedPropertiesExtendedProperties

DataSet, DataTableDataColumn 은 모두 extendedproperties 속성을 가집니다.The DataSet, DataTable, and DataColumn all have an ExtendedProperties property. Extendedproperties 는 결과 집합을 생성 하는 데 사용 된 SELECT 문 또는 데이터가 생성 된 시간 등의 사용자 지정 정보를 저장할 수 있는 PropertyCollection 입니다.ExtendedProperties is a PropertyCollection where you can place custom information, such as the SELECT statement that was used to generate the result set, or the time when the data was generated. Extendedproperties 컬렉션은 데이터 집합에 대 한 스키마 정보와 함께 유지 됩니다.The ExtendedProperties collection is persisted with the schema information for the DataSet.

LINQ to DataSetLINQ to DataSet

LINQ to DataSet는 데이터 집합에 저장 된 연결 되지 않은 데이터에 대 한 언어 통합 쿼리 기능을 제공 합니다.LINQ to DataSet provides language-integrated querying capabilities for disconnected data stored in a DataSet. LINQ to DataSet는 표준 LINQLINQ 구문을 사용 하 고 Visual Studio IDE를 사용 하는 경우 컴파일 시간 구문 검사, 정적 입력 및 IntelliSense 지원을 제공 합니다.LINQ to DataSet uses standard LINQLINQ syntax and provides compile-time syntax checking, static typing, and IntelliSense support when you are using the Visual Studio IDE.

자세한 내용은 LINQ to DataSet을 참조하세요.For more information, see LINQ to DataSet.

참고자료See also