Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Relacje, FK<PK
cezarylee
post 16.02.2007, 10:17:29
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.02.2007

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


Witam, mam za zadanie napisać prostą bazę, rolleyes.gif Mam problem z ustawieniem relacji. Nie mowiąc o sekwencjach (jeszcze do tego nie doszedłem)

1 tabelka

  1. CREATE TABLE film (
  2. id_film number
  3. , tytul varchar(30)
  4. , gatunek varchar(20)
  5. , rok number NOT NULL
  6. , rezyser varchar(35)
  7. , produkcja varchar(50)
  8. , dystrybucja varchar(50)
  9. , PRIMARY KEY (id_film)
  10. )


wstawiam wiersz
  1. INSERT INTO film VALUES ('0','Zagubiona Autostrada','Psychologiczny','1997','Lynch','USA','Gutek Film');


2 tabelka, gdzie pole reżyser ma być brane do tabelki 1.
  1. CREATE TABLE rezyserzy (
  2. id_rez number
  3. , nazwisko varchar(30)
  4. , imie varchar(20)
  5. , narodowosc varchar(20)
  6. , PRIMARY KEY (id_rez)
  7. , FOREIGN KEY(id_film) REFERENCES film(id_film)
  8. );


  1. INSERT INTO rezyser VALUES ('0','Lynch','David','USA');


gdzie tu jest bład
Go to the top of the page
+Quote Post
phpion
post 16.02.2007, 10:29:13
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Odpowiem ci tak jak moj prowadzacy z programowania w C: 'Blad jest w kodzie'
A tak powaznie: czy przypadkiem klucz obcy nie powinien byc w tabeli film na polu rezyser (konkretnie to id_rezysera) i odnosic sie do tabeli rezyserzy do pola id_rez?
Go to the top of the page
+Quote Post
JaRoPHP
post 16.02.2007, 10:32:00
Post #3





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Cytat
gdzie tu jest bład
Jak znam bazy danych, to komunikat błędu został wyświetlony.

Napisałeś strukturę dwóch tabel (miło z Twojej strony smile.gif ) i dwa zapytania. Ale które zwraca błąd (pierwsze, drugie, obydwa)?
W drugim zapytaniu jest błąd w nazwie: tabele ma nazwę rezyserzy, a wstawiasz do tabeli rezyser.


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post
cezarylee
post 16.02.2007, 10:42:42
Post #4





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.02.2007

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


POdam screena najlepiej, teraz zmieniłem zapytanie od. tabeli film, jak mówliliście, i poprawielm nazwe tab. rezyser, ale i tak jest bład.

Go to the top of the page
+Quote Post
phpion
post 16.02.2007, 10:53:28
Post #5





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




W tabeli rezyserzy nie masz pola id_film
Go to the top of the page
+Quote Post
cezarylee
post 16.02.2007, 11:24:39
Post #6





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.02.2007

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


Cytat(phpion.com @ 16.02.2007, 10:53:28 ) *
W tabeli rezyserzy nie masz pola id_film



Hmm, ale to ono będzie występować "oddzielnie", i trzeba by zrobić jakąś relacje, zeby wiedział, ze to pole jest z innej tabeli, a nie moge zrobić relacji do nie istniejącej jeszcze tabeli rezyser. (bede robil od nowa)

Dopisałem do tabeli film:
...
...
, primary key (id_film)
, foreign key(id_rez) references rezyser(id_rez);

Hm, caly czas ma problem z tą definicją id_rez, ale skladnia jest raczej ok. sadsmiley02.gif
Go to the top of the page
+Quote Post
JaRoPHP
post 16.02.2007, 11:38:38
Post #7





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Cytat(cezarylee @ 16.02.2007, 11:24:39 ) *
Hmm, ale to ono będzie występować "oddzielnie", i trzeba by zrobić jakąś relacje, zeby wiedział, ze to pole jest z innej tabeli, a nie moge zrobić relacji do nie istniejącej jeszcze tabeli rezyser. (bede robil od nowa)
No właśnie, a w zapytaniu które pokazałeś (link), próbujesz odwołać się do tabeli rezyser. To masz tą tabelę, czy nie?


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post
SongoQ
post 16.02.2007, 19:54:19
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


@cezarylee Polecam jakas ksiazke o relacyjnych bazach danych bo tu sie podstawy klaniaja. Jak sie patrzy na takie posty to az sie niedobrze robi.


--------------------
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: 18.07.2025 - 00:15