* При перепечатке материалов ссылка на 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

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

Инкапсуляция
CBitmapEx – C++-класс для работы с BMP
Программа сертификации специалистов Microsoft
Создание обработчиков событий элементов управления
Циклические ссылки
Интерфейсы CTS
Строительные блоки .NET
Установка приложения
Параметризованные свойства
Создание и настройка объекта DataAdapter
Интерфейсы как средство достижения полиморфизма
Реализация членов интерфейса на Visual Basic .NET
Параметры компоновки установочной программы
Работа в редакторе кода
Модификация и обновление данных
| .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. Регион сайта: Москва и Санкт-Петербург