다음을 통해 공유


ADO.NET 데이터 세트

DataSet 개체는 ADO.NET 연결이 끊긴 분산 데이터 시나리오를 지원하는 데 핵심적인 요소입니다. DataSet은 데이터 원본에 관계없이 일관된 관계형 프로그래밍 모델을 제공하는 데이터의 메모리 상주 표현입니다. 여러 데이터 원본, XML 데이터와 함께 사용하거나 애플리케이션에 대한 로컬 데이터를 관리하는 데 사용할 수 있습니다. DataSet은 관련 테이블, 제약 조건 및 테이블 간의 관계를 포함하여 전체 데이터 집합을 나타냅니다. 다음 그림에서는 DataSet 개체 모델을 보여 줍니다.

ADO.Net 그래픽
DataSet 개체 모델

DataSet의 메서드 및 개체는 관계형 데이터베이스 모델의 메서드와 일치합니다.

또한 DataSet은 콘텐츠를 XML로 유지 및 다시 로드하고 해당 스키마를 XSD(XML 스키마 정의 언어) 스키마로 다시 로드할 수도 있습니다. 자세한 내용은 DataSet에서 XML 사용을 참조하세요.

데이터테이블컬렉션

ADO.NET DataSet에는 DataTable 개체로 표시되는 0개 이상의 테이블로 이루어진 컬렉션이 포함되어 있습니다. DataTableCollection에는 DataSet의 모든 DataTable 개체가 포함됩니다.

DataTable은 네임스페이 System.Data 스에 정의되며 메모리 상주 데이터의 단일 테이블을 나타냅니다. 테이블의 스키마를 정의하는 열 컬렉션을 DataColumnCollection와 제약 조건을 ConstraintCollection로 구성합니다. DataTable에는 테이블의 데이터를 포함하는 행이 나타내는 DataRowCollection행 컬렉션도 포함됩니다. 현재 상태와 함께 현재 DataRow 버전과 원래 버전을 모두 유지하여 행에 저장된 값의 변경 내용을 식별합니다.

DataView 클래스

DataView를 사용하여 DataTable에 저장된 데이터의 다양한 보기를 만들 수 있으며, 이는 데이터 바인딩 애플리케이션에서 자주 사용되는 기능입니다. 를 DataView사용하면 정렬 순서가 다른 테이블에 데이터를 노출할 수 있으며 행 상태 또는 필터 식에 따라 데이터를 필터링할 수 있습니다. 자세한 내용은 DataViews를 참조하세요.

데이터 관계 컬렉션

DataSet에는 해당 DataRelationCollection 개체의 관계가 포함됩니다. 개체가 나타내는 관계는 한 DataRelation 행을 다른 DataTable의 행과 연결합니다. 관계는 관계형 데이터베이스의 기본 키 열과 외래 키 열 사이에 있을 수 있는 조인 경로와 유사합니다. DataRelation은 DataSet의 두 테이블에서 일치하는 열을 식별합니다.

관계를 사용하면 DataSet에서 한 테이블에서 다른 테이블로 탐색할 수 있습니다. DataRelation의 필수 요소는 관계의 이름, 관련 테이블의 이름 및 각 테이블의 관련 열입니다. 개체 배열 DataColumn 을 키 열로 지정하여 테이블당 둘 이상의 열을 사용하여 관계를 빌드할 수 있습니다. 관계를 DataRelationCollection추가할 때 필요에 따라 UniqueKeyConstraintForeignKeyConstraint 를 추가하여 관련 열 값을 변경할 때 무결성 제약 조건을 적용할 수 있습니다.

자세한 내용은 DataRelations 추가를 참조하세요.

XML

XML 스트림 또는 문서에서 DataSet 을 채울 수 있습니다. XML 스트림 또는 문서를 사용하여 데이터, 스키마 정보 또는 둘 다를 DataSet 에 제공할 수 있습니다. XML 스트림 또는 문서에서 제공된 정보를 DataSet에 이미 있는 기존 데이터 또는 스키마 정보와 결합할 수 있습니다. 자세한 내용은 DataSet에서 XML 사용을 참조하세요.

확장 속성들

DataSet, DataTableDataColumn에는 모두 ExtendedProperties 속성이 있습니다. ExtendedProperties 는 결과 집합을 생성하는 데 사용된 SELECT 문 또는 데이터가 생성된 시간과 같은 사용자 지정 정보를 배치할 수 있는 PropertyCollection 입니다. ExtendedProperties 컬렉션은 DataSet에 대한 스키마 정보를 사용하여 유지됩니다.

LINQ to DataSet (LINQ를 사용하여 DataSet과 연결)

LINQ to DataSet은 데이터 세트에 저장된 연결이 끊긴 데이터에 대한 언어 통합 쿼리 기능을 제공합니다. LINQ to DataSet은 표준 LINQ 구문을 사용하며 Visual Studio IDE를 사용할 때 컴파일 시간 구문 검사, 정적 입력 및 IntelliSense 지원을 제공합니다.

자세한 내용은 LINQ to DataSet을 참조하세요.

참고하십시오