CDaoDatabase::CreateRelation
Wywołanie tej funkcji Członkowskie do ustanowienia relacji między jedno lub więcej pól w tabeli podstawowej bazy danych i jedno lub więcej pól tabeli obcej (innej tabeli w bazie danych).
void CreateRelation(
LPCTSTR lpszName,
LPCTSTR lpszTable,
LPCTSTR lpszForeignTable,
long lAttributes,
LPCTSTR lpszField,
LPCTSTR lpszForeignField
);
void CreateRelation(
CDaoRelationInfo& relinfo
);
Parametry
lpszName
Unikatowa nazwa obiektu relacji.Nazwa musi zaczynać się od litery i może zawierać maksymalnie 40 znaków.Może zawierać liczby i znaki podkreślenia, ale nie może zawierać znaki interpunkcyjne i spacje.lpszTable
Nazwa tabeli podstawowej w relacji.Jeśli tabela nie istnieje, MFC zgłasza wyjątek typu CDaoException.lpszForeignTable
Nazwa tabeli obcej w relacji.Jeśli tabela nie istnieje, MFC zgłasza wyjątek typu CDaoException.lAttributes
Długa wartość, która zawiera informacje o typie relacji.Tę wartość można wymusić więzy integralności między innymi.Można użyć operatora logiczną lub)|) połączyć dowolny z następujących wartości (o ile połączenie sens):dbRelationUnique relacji jest jeden do jednego.
dbRelationDontEnforce relacji nie jest wymuszana (nie więzy integralności).
dbRelationInherited inne niż bieżące bazy danych, zawierający dwie tabele dołączonego istnieje relacja.
dbRelationUpdateCascade aktualizacje będą kaskadowo (więcej informacji na temat cascades, zobacz Uwagi).
dbRelationDeleteCascade usunięcia będzie kaskadowo.
lpszField
Wskaźnik na ciąg zakończony znakiem null, zawierającego nazwę pola w tabeli podstawowej (o nazwie lpszTable).lpszForeignField
Wskaźnik na ciąg zakończony znakiem null, zawierającego nazwę pola w tabeli obcej (o nazwie lpszForeignTable).relinfo
Odwołanie do CDaoRelationInfo obiekt, który zawiera informacje chcesz utworzyć relację.
Uwagi
Relacja nie może dotyczyć kwerendy lub w załączonej tabeli z zewnętrznej bazy danych.
Przy pierwszej wersji funkcji relacji obejmuje jedno pole w każdej z dwóch tabel.Przy drugim wersji relacji obejmuje wiele pól.Maksymalna liczba pól w relacji jest 14.
Ta akcja tworzy obiekt podstawowej relacji DAO, ale to szczegółowa implementacja MFC, ponieważ MFC firmy Hermetyzacja obiektów relacji jest zawarty w klasie CDaoDatabase.MFC nie dostarcza klasę dla relacji.
Ustaw relację atrybuty obiektu aktywacji kaskadowo operacji aparatu bazy danych automatycznie aktualizuje lub usuwa rekordy w jednej lub kilku tabel, po wprowadzeniu zmian w tabelach pokrewnych klucza podstawowego.
Na przykład załóżmy, że ustanowienie Kaskadowo usuń relację między tabelę Klienci i tabelę zamówienia.Podczas usuwania rekordów z tabeli Klienci, skreśla się również rekordów w tabeli zamówienia związane z tego klienta.Ponadto jeśli można ustanowić Kaskadowo usuń relacje między tabeli zamówienia i innych tabel, rekordów z tych tabel są automatycznie usuwane podczas usuwania rekordów z tabeli Klienci.
Dla pokrewnych informacji zobacz temat "Metoda CreateRelation" w pomocy DAO.
Wymagania
Nagłówek: afxdao.h