• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Relacja w MySQL

Aruba Cloud PRO i VPS, Openstack, VMWare, MS Hyper-V
0 głosów
802 wizyt
pytanie zadane 25 marca 2016 w SQL, bazy danych przez babiak Obywatel (1,810 p.)

Witam,

tworzę bazę danych i chcę by była ona relacyjna. Użytkownik będzie mógł wybrać model oraz kombinację i zapisać do dokumentacji wybrane połączenie modelu z kombinacją.


Jak się zabrać do czegoś takiego? Jak stworzyć taką relację? To jest relacja "jeden do wielu"? Np. jedna kombinacja może wiele razy występować w dokumentacji? To samo się tyczy modelu.

Czy nic nie trzeba robić i po prostu w polu "model" w "dokumentacji_pełna" zapisywać id modelu? A później podczas zapytania wpisać po prostu:

SELECT d.kod as kod, m.model as model, k.kombinacja as kombinacja
FROM dokumentacja_pelna d 
LEFT JOIN modele m ON m.id = d.model
LEFT JOIN kombinacja k ON k.id = d.kombinacja

 

 

1 odpowiedź

0 głosów
odpowiedź 25 marca 2016 przez iwan9449 Pasjonat (20,810 p.)

Ten kod sql stworzy Twoje table z przypisanymi już kluczami obcymi do tabeli dokumentacji.

CREATE TABLE kombinacje (
	id INT(11) PRIMARY KEY,
	kombinacja TEXT,
	uwagi TEXT
);

CREATE TABLE modele (
	id INT(11) PRIMARY KEY,
	model TEXT
);

CREATE TABLE dokumentacja_pelna (
	id INT(11) PRIMARY KEY,
	kod VARCHAR(20),
	model INT(11),
	kombinacja INT(11),
	CONSTRAINT model_fk FOREIGN KEY (model) REFERENCES modele(id),
	CONSTRAINT kombinacja_fk FOREIGN KEY (kombinacja) REFERENCES kombinacje(id)
);

Pozdrawiam!

komentarz 25 marca 2016 przez babiak Obywatel (1,810 p.)
Rozumiem. A powiedz mi jeszcze da się do istniejącej już bazy dodać taką relację? I to polecenie jaką tworzy relacje? Bo czytałem, że może być 1:1, 1:wielu, wiele:wielu.

Pozdrawiam

Podobne pytania

0 głosów
1 odpowiedź 155 wizyt
0 głosów
2 odpowiedzi 110 wizyt
pytanie zadane 9 listopada 2020 w SQL, bazy danych przez Programmingc100 Bywalec (2,620 p.)
0 głosów
0 odpowiedzi 110 wizyt

91,832 zapytań

140,506 odpowiedzi

316,996 komentarzy

61,163 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...