Udostępnij za pośrednictwem


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

Zobacz też

Informacje

Klasa CDaoDatabase

Wykres hierarchii

CDaoDatabase::DeleteRelation