Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> FOREIGN KEY - o co w tym chodzi?
acainoks
post
Post #1





Grupa: Zarejestrowani
Postów: 31
Pomógł: 1
Dołączył: 29.10.2009

Ostrzeżenie: (0%)
-----


Witam chciałbym się dowiedzieć po co daję się w tabeli FOREIGN KEY w czym pomaga a w czym przeszkadza. Nie proszę tutaj o link do manuala tylko chciałbym się dowiedzieć tego od ludzi którzy jakoś to sobie już wytłumaczyli i pomogą zrozumieć te zagadnienie mnie. Dziękuję i pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Wilk002
post
Post #2





Grupa: Zarejestrowani
Postów: 20
Pomógł: 4
Dołączył: 26.06.2007

Ostrzeżenie: (0%)
-----


W dwóch słowach klucz obcy jest kluczem podstawowym innej tabeli. Szkolny przykład:
tabela uczniowie ma swój klucz podstawowy id_ucznia, tabela oceny ma swój klucz podstawowy id _ocena oraz id_ucznia jako kolejną kolumnę będąca kluczem obcym. Chodzi żeby połączyć w jakiś sposób dwie tabele ze sobą.
Go to the top of the page
+Quote Post
Mchl
post
Post #3





Grupa: Zarejestrowani
Postów: 855
Pomógł: 145
Dołączył: 17.07.2008
Skąd: High Memory Area

Ostrzeżenie: (0%)
-----


Cytat(Wilk002 @ 15.02.2010, 22:29:16 ) *
W dwóch słowach klucz obcy jest kluczem podstawowym innej tabeli.


Zazwyczaj, ale niekoniecznie.

Tak jak Wilk pisze, klucze obce wiążą ze sobą (tworzy relacje) tabele w bazie danych (relacyjnej, bo takie bazy danych tworzymy w MySQL).

http://www.centrumxp.pl/dotNet/299,1,06_Kl...wne_i_obce.aspx
(Uwaga, artykuł o MSSQL - podstawy teoreryczne te same, szczegóły implementacji mogą być inne)


Aplikacje pisane w PHP rzadko korzystają z kluczy definiowanych w samej bazie danych (przez klauzulę FOREGIN KEY), ale tą samą funkcjonalność mają zazwyczaj zapisaną w samym kodzie aplikacji. Wynika to z tego, że wciąż bardzo popularnym silnikem bazodanowym w MySQL jest MyISAM, który tej klauzuli nie obsługuje (obsługuje klauzulę REFERENCES, ale ma ona funkcję czysto dokumentacyjną). Dopiero InnoDB (inny silnik dostępny w MySQL) daje rozbudowane funkcjonalności kluczy obcych, takie jak kaskadowe uaktualnienia, czy kasowania.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 20:46