Udostępnij za pośrednictwem


Wprowadzenie do obiektów DataRelation

Zestawów danych, zawierające dane powiązane tabele wykorzystania DataRelation obiektów między tabelami relację nadrzędny i podrzędny i powrócić rekordów powiązanych ze sobą. Dodawanie tabel pokrewnych do zestawów danych za pomocą Kreatora konfiguracji źródła danych, lub Projektant Dataset, tworzy i konfiguruje DataRelation obiekt. Aby uzyskać więcej informacji dotyczących zwracać rekordy pokrewne, zobacz Porady: rekordy dostępu w powiązanych DataTables. Aby uzyskać informacje na temat tworzenia relacji danych, zobacz Porady: tworzenie DataRelations przy użyciu narzędzia Projektant.

DataRelation Obiektu pełni dwie funkcje:

  • Może udostępnić rekordy związane z rekordem, w którym pracujesz z. Zawiera rekordy podrzędne, jeśli są w rekord nadrzędny (GetChildRows) i rekord nadrzędny, jeśli użytkownik pracuje z rekord podrzędny (GetParentRow ).

  • Można go wymuszania ograniczeń dotyczących więzów integralności, takie jak usuwanie powiązanych rekordach podrzędnych, po usunięciu rekordu nadrzędnego.

Ważne jest zrozumienie różnicy między true sprzężenia i funkcji jest DataRelation obiektu. True sprzężenia rekordy są pobierane z tabel nadrzędnych i podrzędnych i wprowadzane do pojedynczy, płaski zestaw rekordów. Kiedy używać DataRelation obiekt utworzono nie nowych rekordów. Zamiast tego stosunku śledzi relacje między tabelami i utrzymuje synchronizację rekordy nadrzędne i podrzędne.

Obiekty DataRelation i ograniczenia

A DataRelation obiekt jest również używany do tworzenia i wymusić następujące ograniczenia:

  • Ograniczenie typu unique, która gwarantuje, że kolumna w tabeli nie zawiera duplikatów.

  • Ograniczenie klucza obcego, który może być używany do obsługi więzy integralności między tabelę nadrzędną i podrzędną w elemencie dataset.

Ograniczenia, które określają w DataRelation obiektu są implementowane przez automatyczne tworzenie odpowiednich obiektów lub ustawiania właściwości. Jeśli zostanie utworzona za pomocą ograniczenia na klucz obcy DataRelation obiektu, wystąpienia ForeignKeyConstraint klasy zostaną dodane do DataRelationna ChildKeyConstraint właściwości.

Ograniczenie typu unique jest zaimplementowana albo po prostu ustawiając Unique właściwość kolumny danych do true lub przez dodanie instancji UniqueConstraint klasy do DataRelation obiektu ParentKeyConstraint. Informacje w sprawie zawieszenia ograniczeń w zestawie danych, zobacz Porady: wyłączanie ograniczeń w czasie wypełniania zestawu danych.

0k21zcyx.collapse_all(pl-pl,VS.140).gifReguły więzów integralności

Jako część ograniczenia na klucz obcy można określić reguły więzów integralności, które są stosowane w trzech punktach:

  • Kiedy aktualizowane jest rekord nadrzędny

  • Po usunięciu rekordu nadrzędnego

  • Kiedy zmiana jest zaakceptowane lub odrzucone

Reguły można wprowadzać są określone w Rule wyliczenie i są wymienione w poniższej tabeli.

Reguły ograniczenia na klucz obcy

Akcja

Cascade

Zmiany (aktualizację lub usunięcie) do rekordu nadrzędnego jest dokonywane w powiązanych rekordów w tabeli podrzędnej, jak również.

SetNull

Rekordy podrzędne nie są usuwane, ale klucz obcy w rekordach podrzędnych jest ustawiona na DBNull. To ustawienie, można pozostawić rekordy podrzędne jako "sierot" — oznacza to, że mają one żadnej relacji z nadrzędnym rekordy.

UwagaUwaga
Przy użyciu tej reguły może spowodować nieprawidłowe dane w tabeli podrzędnej.

SetDefault

Klucz obcy w pokrewnych rekordach podrzędnych jest ustawiona na wartość domyślną (jak ustalono w kolumnie DefaultValue właściwości).

None

Do powiązanych rekordach podrzędnych są wprowadzane żadne zmiany. To ustawienie, rekordy podrzędne można skończyć zawierających odwołania do nieprawidłowego elementu nadrzędnego rekordów.

Aby uzyskać więcej informacji na temat aktualizacji w tabelach dataset zobacz Zapisywanie danych w zestawach danych.

0k21zcyx.collapse_all(pl-pl,VS.140).gifTylko do ograniczenia stosunków

Podczas tworzenia DataRelation obiektu, istnieje możliwość określenia, że stosunek służyć tylko do wymuszania ograniczeń — oznacza to, nie będzie ono również być wykorzystane do uzyskiwania dostępu do rekordów pokrewnych. Ta opcja umożliwia generowanie zestawu danych, który jest nieco bardziej efektywny i zawiera metody mniej niż jedną z możliwości związane z rekordów. Jednakże nie można uzyskać dostęp do rekordów pokrewnych. Na przykład relacji tylko do ograniczenia uniemożliwia usunięcie rekordu nadrzędnego, który nadal ma dzieci i rekordy podrzędne nie może uzyskać dostępu do obiektu nadrzędnego.

Zobacz też

Informacje

DataRelation

GetChildRows

GetParentRows

Kreator konfiguracji źródła danych

Koncepcje

Praca z zestawami danych w Visual Studio

Przygotowywanie aplikacji na otrzymywanie danych

Edytowanie danych w aplikacji

Tworzenie i edytowanie wpisanych zestawów danych