MySQL Forums
Forum List  »  German

Re: viele Spalten oder viele Tabellen?
Posted by: Thomas Wiedmann
Date: May 29, 2011 09:37AM

Hallo Timo,

immer wenn es die Anforderung einer Mehrfachbenennung gibt oder möglich ist, wird eine 1:N Beziehnung (Master-Detail-Tabelle) notwendig.
Beispiel (InnoDB vorausgesetzt wegen Fremdschlüsselbeziehungen)

CREATE TABLE mitglied (
 mitglied_id INT NOT NULL AUTO_INCREMENT,
 name VARCHAR(50) NOT NULL,
 vorname VARCHAR(50) NOT NULL,
 PRIMARY KEY (mitglied_id)
);

CREATE TABLE sprache (
 sprache_id INT NOT NULL AUTO_INCREMENT,
 sprache VARCHAR(50) NOT NULL,
 PRIMARY KEY (sprache_id)
);

CREATE TABLE mitglied_wohnort (
 mwohnort_id INT NOT NULL AUTO_INCREMENT,
 mitglied_id INT NOT NULL,
 ort VARCHAR(50) NOT NULL,
 PRIMARY KEY (mwohnort_id),
 CONSTRAINT fk_mitglied_wohnort
  FOREIGN KEY (mitglied_id)
   REFERENCES mitglied (mitglied_id)
);

CREATE TABLE mitglied_sprache (
 msprache_id INT NOT NULL AUTO_INCREMENT,
 mitglied_id INT NOT NULL,
 sprache_id INT NOT NULL,
 PRIMARY KEY (msprache_id),
 CONSTRAINT fk_mitglied_sprache
  FOREIGN KEY (mitglied_id)
   REFERENCES mitglied (mitglied_id),
 CONSTRAINT fk_mitglied_sprache2
  FOREIGN KEY (sprache_id)
   REFERENCES sprache (sprache_id)   
);

Grüße
Thomas

--
Die SQL-Backstube
http://www.twiedmann.de/sqlbackstube/index



Edited 2 time(s). Last edit at 05/29/2011 10:09AM by Thomas Wiedmann.

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: viele Spalten oder viele Tabellen?
1193
May 29, 2011 09:37AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.