Cechy ograniczeń kluczy obcych:
Niektóre ważne cechy ograniczenia klucza obcego wyjaśniono poniżej.
Warunek wstępny:
Przed utworzeniem ograniczenia klucza obcego musisz utworzyć bazę danych i tabelę nadrzędną z kluczem podstawowym. Załóżmy, że nazwa bazy danych to 'biblioteka„I zawiera dwa tabele nadrzędne”książki' I 'pożyczający'. Nawiązać połączenie z serwerem MySQL za pomocą Mysql Klient i uruchom następujące instrukcje SQL, aby utworzyć bazę danych i tabele.
Utwórz bibliotekę bazy danych;Zdefiniuj ograniczenie klucza obcego za pomocą instrukcji Utwórz
Utwórz tabelę o nazwie 'book_borrow_info„Z ograniczeniami kluczowymi za obcokrajowców poprzez wykonanie następującego stwierdzenia. Tutaj book_id pole jest Klucz obcy dla tej tabeli i każda wartość tego pola musi istnieć w ID pole książki tabela. książki jest tabelą nadrzędną i book_borrow_info jest stołem dziecięcym. Dwa ograniczenia są również ustalane z kluczem obcego tutaj. To są Usuń kaskadę I Zaktualizuj kaskadę. Oznacza to, że jeśli jakikolwiek klucz podstawowy usunie lub zaktualizuje z tabeli nadrzędnej, to odpowiednie rekordy związane z tabelą dziecięcą powiązaną z klawiszem obcego zostaną usunięte lub zostanie zaktualizowany klawisz obcy.
Utwórz tabelę book_borrow_info (Teraz uruchom następujące instrukcje SQL, aby wstawić niektóre rekordy w obu tabelach. Pierwsza instrukcja wstawka wstawię cztery rekordy do książki tabela. Cztery wartości ID pole książki Tabela będzie wynosić 1, 2, 3 i 4. Druga instrukcja wstawka wstawię cztery rekordy do book_borrow_info na podstawie ID wartość książki tabela.
Wstaw do wartości książekJeśli spróbujesz wstawić wartość w polu klucza obcego tabeli dziecięcej, która nie istnieje w polu klucza podstawowego tabeli nadrzędnej, MySQL wygeneruje błąd. Poniższa instrukcja SQL wygeneruje błąd, ponieważ tabela nadrzędna, książki nie zawiera żadnej wartości identyfikacyjnej 10.
Wstaw wartości Book_Borrow_InfoPo wykonaniu następującej instrukcji Usuń, gdy czwarty rekord zostanie usunięty z książki Tabela, a następnie powiązane rekordy z book_borrow_info Tabela zostanie usunięta automatycznie dla ograniczenia klucza obcego.
Usuń z książek, w których id = 4;Zdefiniuj ograniczenie klucza obcego za pomocą instrukcji alter
Początkowo wstaw niektóre rekordy do pożyczkobiorcy tabela i ta tabela zostanie zdefiniowana jako tabela nadrzędna w następnej ZMIENIAĆ oświadczenie.
Wstaw do wartości pożyczkobiorcówUruchom następujące ZMIENIAĆ Oświadczenie o ustaleniu innego ograniczenia kluczowego obcego dla book_borrow_info stół, aby nawiązać związek pożyczkobiorcy tabela. Tutaj, pożyczka_id jest zdefiniowany jako klucz obcy dla book_borrow_info tabela.
Alter Table Book_Borrow_info Dodaj ograniczenie FK_BORRERWER
Klucz zagraniczny (pożyczkobiorcy_dani) odniesienia (id) w Usuń kaskadę w zakresie aktualizacji ograniczającej;
Teraz wstaw rekord do book_borrow_info z ważnym pożyczka_id wartość, która istnieje ID pole pożyczkobiorcy tabela. 157643 Wartość istnieje w tabeli kredytobiorców, a następująca instrukcja wstawka zostanie pomyślnie wykonana.
Wstaw wartości Book_Borrow_InfoPoniższa instrukcja wstawki wygeneruje komunikat o błędzie, ponieważ wartość identyfikatora 195680 nie istnieje w tabeli kredytobiorców.
Wstaw wartości Book_Borrow_InfoWniosek:
Prawidłowe zdefiniowanie ograniczeń kluczowych jest bardzo ważnym zadaniem do tworzenia relacyjnej bazy danych i odpowiednio zarządzać danymi między tabelami. Znajomość zastosowań ograniczeń kluczowych jest bardzo niezbędna dla projektantów bazy danych. Mam nadzieję, że ten artykuł pomoże nowym projektantom bazy danych w zrozumieniu pojęcia ograniczeń kluczowych obcych i odpowiednio zastosowanie ich w swoich zadaniach.