* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Ограничения Foreign Key
8 февраля 2009

Ограничение Foreign Key Constraint (внешний ключ) определяет изменение дочерних
строк при модификации или удалении родительской строки. Чтобы создать объект
Foreign Key Constraint, необходимо указать родительское и дочернее поле, например:
Visual Basic .NET
Dim myConstraint As New
ForeignKeyConstraint(CustomersTbl.Columns("CustomerID"),
QrdersTbl.Columns{"CustomerID"))
Visual C#
ForeignKeyConstraint myConstraint = new
ForeignKeyConstraint (Gust omersTbl. Col urnns[ "Customer ID"],
OrdersTbl.Columns["CustomerlD"]);
Подобно UniqueConstraint, для активации ограничение ForeignKeyConstraint не-
обходимо добавить к набору Constraints таблицы, содержащей родительское поле:
Visual Basic .NET
CustomersTbl.Constraints.Add(myConstraint)
Visual C#
CustomersTbl.Constraints.Add(myConstraint);
Ограничение ForeignKey'Constraint определяет три правила, регламентирующих
отношения между родительским и дочерним полями:
• UpdateRule — применяется при модификации родительской строки;
• DeleteRule — применяется при удалении родительской строки;
• AcceptRejectRule — применяется каждый раз при вызове метода AcceptChanges
объекта DataTable, для которого определено ограничение.
Эти правила представлены свойствами объекта ограничения, которые могут при-
нимать значения, описанные в таблице 6-2.
Таблица 6-2. Свойства объекта ограничения и их возможные значения
Значение Описание
Cascade Модификации родительской строки реплицируются в дочерние строки
None Модификации родительской строки не отражаются на дочерних строках;
в результате могут появиться дочерние строки со ссылками на
недействительные родительские строки
SetDefault Полю внешнего ключа в связанных дочерних записях присваивается
значение по умолчанию (заданное свойством DefaultValue этого ключа)
SetNull Полю внешнего ключа в дочерней таблице присваивается значение
DBNulf; в результате в дочерней таблице могут появиться
недействительные значения
Примечание Свойство AcceptRejectRule принимает значение Cascade либо None,
Всем свойствам, представляющим правила, по умолчанию присвоено значение
Cascade.

Теги: .NET

Статьи по теме:

Перегрузка членов
Создание типизированного объекта DataSet с помощью XML Designer
Модификаторы доступа к типам
Реализация полиморфизма через наследование
Загрузка элемента управления в Internet Explorer
Создание DataAdapter с помощью мастера Data Adapter Configuration Wizard
Редакторы свойств программы установки
Модель защиты, основанная на ролях
Анти-паттерны в действии или Самые популярные ошибки программистов
Добавление элементов управления на панель Toolbox
Управление лицензированием элементов управления
Стандартная система типов CTS
Тестирование элемента управления
Создание класса строго типизированного набора на основе класса CollectionBase
Создание экземпляров элементов управления ActiveX
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31


     



Rambler's Top100

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Ограничения Foreign Key. Регион сайта: Москва и Санкт-Петербург