Поделиться через


DataTable.Constraints Свойство

Определение

Получает коллекцию ограничений, содержащихся в данной таблице.

public:
 property System::Data::ConstraintCollection ^ Constraints { System::Data::ConstraintCollection ^ get(); };
public System.Data.ConstraintCollection Constraints { get; }
[System.Data.DataSysDescription("DataTableConstraintsDescr")]
public System.Data.ConstraintCollection Constraints { get; }
member this.Constraints : System.Data.ConstraintCollection
[<System.Data.DataSysDescription("DataTableConstraintsDescr")>]
member this.Constraints : System.Data.ConstraintCollection
Public ReadOnly Property Constraints As ConstraintCollection

Значение свойства

Коллекция ConstraintCollection, содержащая коллекцию объектов Constraint для таблицы. Если отсутствуют объекты Constraint возвращается пустая коллекция.

Атрибуты

Примеры

В следующем примере добавляется ForeignKeyConstraint в коллекцию ограничений.

private void CreateConstraint(DataSet dataSet,
    string table1, string table2, string column1, string column2)
{
    ForeignKeyConstraint idKeyRestraint = new
        ForeignKeyConstraint(dataSet.Tables[table1].Columns[column1],
        dataSet.Tables[table2].Columns[column2]);

    // Set null values when a value is deleted.
    idKeyRestraint.DeleteRule = Rule.SetNull;
    idKeyRestraint.UpdateRule = Rule.Cascade;

    // Set AcceptRejectRule to cascade changes.
    idKeyRestraint.AcceptRejectRule = AcceptRejectRule.Cascade;

    dataSet.Tables[table1].Constraints.Add(idKeyRestraint);
    dataSet.EnforceConstraints = true;
}
Private Sub CreateConstraint(dataSet As DataSet, _
    table1 As String, table2 As String, _
    column1 As String, column2 As String)

    Dim idKeyRestraint As ForeignKeyConstraint = _
        New ForeignKeyConstraint _
        (dataSet.Tables(table1).Columns(column1), _
        dataSet.Tables(table2).Columns(column2))

    ' Set null values when a value is deleted.
    idKeyRestraint.DeleteRule = Rule.SetNull
    idKeyRestraint.UpdateRule = Rule.Cascade

    ' Set AcceptRejectRule to cascade changes.
    idKeyRestraint.AcceptRejectRule = AcceptRejectRule.Cascade
    
    dataSet.Tables(table1).Constraints.Add(idKeyRestraint)
    dataSet.EnforceConstraints = True
End Sub

Комментарии

Ограничивает ForeignKeyConstraint действие, выполняемое при удалении или обновлении значения в столбце (или столбцах). Такое ограничение предназначено для использования с первичными ключевыми столбцами. В отношениях "родители-потомки" между двумя таблицами удаление значения из родительской таблицы может повлиять на дочерние строки одним из следующих способов.

  • Дочерние строки также можно удалить (каскадное действие).

  • Для значений в дочернем столбце (или столбцах) можно задать значения NULL.

  • Для значений в дочернем столбце (или столбцах) можно задать значения по умолчанию.

  • Может быть создано исключение.

Активна UniqueConstraint при попытке задать для значения в первичном ключе неуникальное значение.

Применяется к

См. также раздел