Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Klucz obcy = null
Marys91
post 16.05.2011, 21:36:40
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 29.12.2010

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


Witam,
co zrobić jeśli klucz obcy może być NULL? Jak wtedy tworzyć tabele? Mam wtedy definiować klucz obcy czy nie? Czy mogę np. zrobić to tak:
  1. CREATE TABLE pacjent(
  2. id serial,
  3. imie varchar(50) NOT NULL,
  4. nazwisko varchar(50) NOT NULL,
  5. id_lekarz_rodz integer,
  6. ...
  7. CONSTRAINT pacjent_id_pk PRIMARY KEY(id),
  8. CONSTRAINT pacjent_id_id_lekarz_rodz_fk FOREIGN KEY(id_lekarz_rodz));
Go to the top of the page
+Quote Post
everth
post 16.05.2011, 22:23:26
Post #2





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

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


Jaka to jest sytuacja? Czy NULL w lekarzu rodzinnym oznacza brak przyporządkowania pacjenta do określonego lekarza czy też brak informacji? Czy system dopuszcza sytuację w której pacjent może nie być przyporządkowanym do jakiekolwiek lekarza rodzinnego? W tym przypadku mógłbyś zdefiniować że ID lekarza 0 oznacza właściwie brak lekarza. W tym drugim dać NULL (nie wiemy czy pacjent posiada lekarza). Choć osobiście dla tego przypadku też wolałbym zdefiniować nieprawidłowe ID np. -1.


--------------------
Już mi się ani wiedzieć, ani tym bardziej myśleć nie chce.
[Think different]!
Go to the top of the page
+Quote Post
Marys91
post 16.05.2011, 22:24:59
Post #3





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 29.12.2010

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


To oznacza, że pacjent może nie mieć lekarza rodzinnego.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 21.06.2025 - 13:43