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.


The dialog boxes and menu commands you see might differ from those described in Help depending on your active settings or edition. To change your settings, choose Import and Export Settings on the Tools menu. 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.

How to: Display or Hide Relationship Names on the Dataset Designer

Explains how to toggle on and off the displaying of the relationship name on the Dataset Designer surface.

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.

Community Additions