Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Relacyjne bazy danych, oraz rozszerzone zapytania
pojas
post
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 31.03.2006

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


Nie mogę załapać jak korzystać z relacyjnych baz danych.

Przykładowo jeśli chciałbym stronę, gdzie dodaję informacje o sobie, tj. numer gg. Mając na uwadze, że strona może być rozbudowywana powinienem stworzyć kilka tabel ze sobą powiązanych? Takie zabezpieczenie jeśli za miesiąc zechcę dodać też możliwość wpisywania adresu skypa.

Korzystam z DBDESINGERahttp://img129.imageshack.us/img129/649/modelhi5.png

  1. CREATE TABLE person (
  2. idperson INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  3. name VARCHAR(255) NOT NULL,
  4. PRIMARY KEY(idperson)
  5. )
  6. TYPE=InnoDB;
  7.  
  8. CREATE TABLE messengers (
  9. idmessengers INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  10. name VARCHAR(255) NOT NULL,
  11. description TEXT NULL,
  12. PRIMARY KEY(idmessengers)
  13. )
  14. TYPE=InnoDB;
  15.  
  16. CREATE TABLE messenger (
  17. idmessenger INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  18. person_idperson INTEGER UNSIGNED NOT NULL,
  19. messengers_idmessengers INTEGER UNSIGNED NOT NULL,
  20. address VARCHAR(255) NOT NULL,
  21. PRIMARY KEY(idmessenger),
  22. INDEX messenger_FKIndex1(messengers_idmessengers),
  23. INDEX messenger_FKIndex2(person_idperson),
  24. FOREIGN KEY(messengers_idmessengers)
  25. REFERENCES messengers(idmessengers) ON DELETE NO ACTION ON UPDATE NO ACTION,
  26. FOREIGN KEY(person_idperson)
  27. REFERENCES person(idperson) ON DELETE NO ACTION ON UPDATE NO ACTION
  28. )
  29. TYPE=InnoDB;


Jest to sensowne rozwiązanie?

Teraz po dodaniu kilku wpisów chciałbym wyszukać wpis z
adresem jakiegoś komunikatora (posiadam nazwę - zmienna) dla pewnej osoby (posiadam login - kolejna zmienna).

Nie potrafię napisać takiego zapytanie, bo większość kursów kończy się na prostym SELECT ...;
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 19.08.2025 - 04:11