This documentation is archived and is not being maintained.

Relationships in Datasets

A dataset can contain related tables like a relational database. The object that facilitates a relationship between data tables is a DataRelation object. The following topics provide information about ADO.NET DataRelation objects, how to create them, and how to use them to work with data in related tables.


Your computer might show different names or locations for some of the Visual Studio user interface elements in the following instructions. The Visual Studio edition that you have and the settings that you use determine these elements. For more information, see Visual Studio Settings.

Introduction to DataRelation Objects

Provides an overview of how datasets allow you to specify relationships between tables and how you can take advantage of these relationships.

How to: Create DataRelations with the Dataset Designer

Explains how to use the Dataset Designer to add a DataRelation object to a dataset.

How to: Access Records in Related DataTables

Explains how to programmatically return related records in a typed dataset with tables in a one-to-many relationship.

Walkthrough: Creating a Relationship between Data Tables

Provides step-by-step instructions for creating two data tables with the Dataset Designer and adding a relation between them.


Represents a parent/child relationship between two T:System.Data.DataTable objects.


Gets the child rows of a T:System.Data.DataRow.


Gets the parent rows of a T:System.Data.DataRow.


Indicates the action that occurs when a ForeignKeyConstraint is enforced.


Gets or sets a value indicating whether the values in each row of the column must be unique.


Represents a constraint that can be enforced on one or more DataColumn objects.

Adding DataRelations (ADO.NET)

Describes how to create relations between tables in a DataSet.

Navigating DataRelations (ADO.NET)

Describes how to use the relations between tables in a DataSet to return the child or parent rows of a parent-child relationship.

Nesting DataRelations (ADO.NET)

Discusses the importance of nested DataRelation objects when representing the contents of a DataSet as XML data, and describes how to create them.