skanuj0245 (3)

skanuj0245 (3)



258 PHP i MySQL dla każdego

258 PHP i MySQL dla każdego

Osobald

Imię

Nazwisko

Data urodzenia

1

Jan

Kowalski

1970-01-01

2

Jan

Kowalski

1970-01-01

3

Andrzej

Nowak

1971-02-02

4

Anna

Jabłońska

1972-03-03


Rysunek 9.19.

Utworzenie dodatkowej kolumny pozwala jednoznacznie zidentyfikować każdy rekord

wiersz tabeli, a te dwie kolumny tego warunku nie spełniają. O tym, która kolumna (lub kolumny) będzie kluczem, decyduje programista tworzący bazę. Klucze pozwalają zaś na budowanie relacji między tabelami.

Relacje

Wiemy już, że dane w bazie są przechowywane w tabelach. Logika podpowiada, że takie tabele muszą być ze sobą w jakiś sposób powiązane, inaczej nie odniesiemy z nich większego pożytku. Jeśli prowadzimy np. sklep internetowy, a w bazie znajdują się tabele zawierające dane o klientach i o zamówieniach przez nich dokonanych, musi istnieć takie powiązanie, które jednoznacznie przypisze zamówienie klientowi. Oznacza to, że pomiędzy tymi tabelami musi istnieć tzw. relacja. W praktyce takie powiązanie zostanie zrealizowane przez wprowadzenie do jednej z tabel tak zwanego klucza obcego. Schematycznie sytuacja taka została przedstawiona na rysunku 9.20.


Rysunek 9.20.

Umieszczenie klucza obcego w tabeli opisującej zamówienia

Mamy tu dwie tabele, jedną opisującą klientów i drugą opisującą zamówienia. Obie tabele mają klucze podstawowe; w pierwszej jest to kolumna KI ientld, w drugiej — kolumna Zamówienield. W tabeli opisującej zamówienia znajduje się również klucz obcy KI ientld, czyli nic innego, jak klucz podstawowy z tabeli opisującej klientów. Dzięki takiej strukturze wiemy, że zamówienie o identyfikatorze 1 zostało złożone przez Jana Kowalskiego 1 stycznia 2005 roku, a np. zamówienie o numerze 3 — 3 marca 2005 roku przez Annę Jabłońską. A zatem powtórzmy raz jeszcze: KI ientld jest kluczem podstawowym w tabeli opisującej klientów, ale kluczem obcym w tabeli opisującej zamówienia. W ten sposób powstała pomiędzy tymi dwiema tabelami relacja.

W teorii projektowania relacyjnych baz danych wyróżnia się trzy podstawowe typy relacji:


Wyszukiwarka

Podobne podstrony:
aparat (18) Test nr 2 dla grupy Z4R2S0 Imię i nazwisko........................................Data..
skanuj0021 (133) •OH :---- •OH KOLOKWIUM ZALICZENIOWE Z2 Analityka Medyczna Imię i nazwisko, data i.
znaki dla kontaktow SELECT Imię, Nazwisko. rodzaj_kontaktu, kontakt FRÓM osoby , kontakty WHERE
skanuj0021 (133) •OH :---- •OH KOLOKWIUM ZALICZENIOWE Z2 Analityka Medyczna Imię i nazwisko, data i.
skanuj0059 59 59 - imię i nazwisko data > Na postawie biografii Cypriana Norwida
skanuj0082 2 82Kurta pracy 1 imię i nazwisko data i a Parafrazując wiersz Curriculum vitae Leopolda
V NC1 PRACA KONTROLNA DLA SEMESTRU IV Imię i nazwisko (nr w dzienniku).    .....2....
skanuj0013 A Oznaczenie sądu do którego skarga jest wnoszona; B Oznaczenie stron tzn. skarżący* Imię
skanuj0017 Wrocław, dn.22.10.2002 Q I Y2,<£ W? vj^»V&^ B O5.00 C (imię i nazwisko studenta) j
strona3 by kar 23 maja 1997 Analiza Matematyczna dla Ekonomistów 3 Kolokwium 4 c Imię i Nazwisk
strona5 by kar 31 maja 1996 Analiza Matematyczna dla Ekonomistów 0Kolokwium 4 Imię i Nazwisko:
konkurs1 cz 1 Konkurs matematyczny dla klasy III Imię i nazwisko 1.    Podpisz kartk
skanuj0001 (143) dr Marcin Osiko wicz imię i nazwisko....... .... data.. Podstawy rachunkowości egza
aparat (12) id Test nr 3 dla grupy Z4R2S0 Imię i nazwisko...........................................
aparat (13) 1 est nr 3 dla grupy Z4R2S0 Imię i nazwisko.............................................

więcej podobnych podstron