SQL-Statement Feld von Fremdschlüsseln als Spalte möglich?

Toni99

Mitglied
Hallo Liebe Gemeinde,

vielleicht könnt ihr mir weiterhelfen. Ich arbeite zur Zeit mit HSQLDB aber das Problem sollte sich auf reines SQL beschränken lassen. Das Problem:

Ich habe 2 Tabellen. Die erste Tabelle enthält Daten über Projekte (pID,Name,Starttermin, Endtermin, ...) und die zweite Tabelle Daten über Mitarbeiter (mID,Name,Vorname,....).

In einem weiteren Schritt möchte ich natürlich jedem Projekt auch ein oder mehrere Bearbeiter zuweisen und dachte mir, die erste Tabelle (Projekte) um ein Feld von mID zu erweitern, welche die IDs der mitarbeiter enthält (mID) die an dem jeweiligen Projekt mitarbeiten. Dabei wären ungültige mIDs oder doppelte nicht zulässig, also ein Feld aus Fremschlüsselwerten?

Hoffe ich konnte mein Problem verständlich skizzieren und hoffe auf ein paar konstruktive Hilfestellungen.

Gruß ein SQL Frischling 🙂
 
In einem weiteren Schritt möchte ich natürlich jedem Projekt auch ein oder mehrere Bearbeiter zuweisen und dachte mir, die erste Tabelle (Projekte) um ein Feld von mID zu erweitern, welche die IDs der mitarbeiter enthält (mID) die an dem jeweiligen Projekt mitarbeiten.

Ein Feld kann auch nur eine ID aufnehmen, nicht mehrere. Hier hast du offenbar eine m:n-Beziehung, d.h. ein Projekt hat viele Mitarbeiter und ein Mitarbeiter kann viele Projekte haben. Man löst dies durch eine weitere Tabelle, die zwei Fremdschlüssel enthält (ID zu MA und ID zu Projekt). Hiermit wird das Mapping hergestellt.
 
Danke für deine schnelle Antwort und so habe ich es zur Zeit gelöst. Habe eine dritte Tabelle die 2 Spalten hat (pID,mID) beide sind als Fremdschlüssel auf die IDs der anderen Tabellen definiert. Leider kann ich aber doppelte Einträge generieren. Sprich 1 Projekt kann 2 mal den selben Mitarbeiter haben.

Hast du eine Idee wie ich das verhindern kann?
 

Neue Themen


Zurück
Oben