# ER Diagramm erstellen (Entity-Relationship)



## Zartbitter (9. Nov 2012)

Hallo liebes Forum,
ich weiß nicht ob hier der richtige Ort ist, wenn nicht bitte verschieben, danke.

Also ich will ein Entity-Relationship Diagramm zeichnen/erstellen, weiß nur nicht ganz wie ich das machen soll und brauch eure Hilfe.


Das ER Diagramm soll mindestens 6 Entitäten haben mit folgender "Miniworld":

Ein System das alle Daten für eine Kette von Shops verwaltet, es soll auch einen Internetshop geben. 
Ich würde also gern als "Hauptshop" nen Büchershop machen mit Büchern. Bei den Büchern soll es dann den Namen, Entstehungsjahr(publication), Verlag, Autor usw. geben. 
Die Produzenten produzieren verschiedene Produkte in verschiedenen Saisons(Jedes mit einem Start- und End-dato). Also muss auch der Zeitraum zu sehen sein, wann das Produkt erhältlich ist und zu welchem Preis.
Jedes Produkt soll auch eine Kontaktperson haben, also bei der Produktionsfirma. 
Es soll auch so sein das es zu jeder Saison verschiedene Kontaktpersonen gibt. 
Es soll auch möglich sein ,dass man Zugriff auf Informationen von Kontaktpersonen hat, die nicht aktiv sind. 
Die Produkte können in verschiedenen Perioden im Jahr verkauft werden und es soll möglich sein , dass man sie verfolgen kann wo jenes Produkt verkauft wurde und zu welchem Preis.
Darüberhinaus soll man Berichte entnehmen können, die Statistiken zeigen, von den verschiedenen Shops, über verschiedene Zeitperioden. 

Ich bin nicht sehr weit gekommen und weiß leider nicht wirklich weiter, ich versteh nicht wie ich den Zusammenhang hin bekomme.


----------



## nillehammer (9. Nov 2012)

Lass im ersten Schritt mal die Attribute (später Tabellenspalten) weg und mach Dir nur Gedanken über die Entitäten und ihre Beziehungen. Dazu steht einiges in Deinem Text


> Ich würde also gern als "Hauptshop" nen Büchershop machen mit Büchern. Bei den Büchern soll es dann den Namen, Entstehungsjahr(publication), Verlag, Autor usw. geben.


"Shop verkauft Bücher" ist eine Beziehung. Wie ist die Kardinalität? Ein Shop verkauft sicherlich mehrere Bücher und ein Buch wird sicherlich nicht von nur einem Shop vertrieben, also m:n. Das ist bei ERD eine Beziehungstabelle.
"Buch hat Verlag" ist eine Beziehung. Ein Buch wird eindeutig von einem Verlag verlegt, ein Verlag verlegt aber mehrere Bücher also Kardinalität 1:n. Hier brauht es keine Beziehungstabelle. Die Relation wird über einen Fremdschlüssel "verlagId" in der Buch-Tabelle hergestellt.

Soweit der Ansatz klar? Und schau Dir hier nochmal an, welche Zeichenelemente es in einem ERD gibt: Entity-Relationship-Modell ? Wikipedia


----------



## Zartbitter (10. Nov 2012)

nillehammer hat gesagt.:


> Lass im ersten Schritt mal die Attribute (später Tabellenspalten) weg und mach Dir nur Gedanken über die Entitäten und ihre Beziehungen. Dazu steht einiges in Deinem Text
> 
> "Shop verkauft Bücher" ist eine Beziehung. Wie ist die Kardinalität? Ein Shop verkauft sicherlich mehrere Bücher und ein Buch wird sicherlich nicht von nur einem Shop vertrieben, also m:n. Das ist bei ERD eine Beziehungstabelle.
> "Buch hat Verlag" ist eine Beziehung. Ein Buch wird eindeutig von einem Verlag verlegt, ein Verlag verlegt aber mehrere Bücher also Kardinalität 1:n. Hier brauht es keine Beziehungstabelle. Die Relation wird über einen Fremdschlüssel "verlagId" in der Buch-Tabelle hergestellt.
> ...



Ah ok vielen Dank. 
Ich hab es nun so gemacht. Ich versteh aber immer noch nicht wo ich das mit der Kontaktperson  und das mit den Saisons einarbeiten kann und "Die Produkte können in verschiedenen Perioden im Jahr verkauft werden und es soll möglich sein , dass man sie verfolgen kann wo jenes Produkt verkauft wurde und zu welchem Preis." und wie das, einfach 2 Attribute im Shop? 
Bei mir sieht das nun so aus.






Was mach ich falsch ?


----------



## langhaar! (12. Nov 2012)

Werd dir zunächst mal klar, was du inhaltlich alles abbilden willst und trenne die Begriffe eindeutig.

Sind z.B. Produktionsfirma, Verlag und Produzent das gleiche?
Oder besitzt jedes Buch mehrere Produktionsfirmen, für die einzelnen Arbeitsschritte (Inhalt bereitstellen, Redaktionnelles, Lektorat, Drucken & Binden)?
Was verstehst du genau unter dem Produzenten? Den Autor, der das Werk inhaltlich kreiiert? Den Verlag, der die genauen Vorgaben für die Erstellung (Titelbild, Layout etc.) vorgibt und die Vervielfältigung organisiert? Die Druckerei, die letzlich die 'Produktion' vornimmt?  


Erst wenn du alle diese Fragen beantworten kannst und genau weisst, was du abbilden willst, kannst du sinnvollerweise ein Diagramm machen.


----------



## nillehammer (12. Nov 2012)

> Die Produkte können in verschiedenen Perioden im Jahr verkauft werden


Gut, es gibt eine weitere fachliche Entität, die noch weitere Kriterien (start/ende) hinzufügt und "irgendwie zwischen Buch und Shop hängt". Nennen wir sie _Verkaufsperiode_ (Du hast sie _erhältlich_ genannt). Die hat dann einen start, ein ende, eine Beziehung zu einem Shop sowie eine Beziehung zu einem Buch. Macht dann die direkte Beziehung zwischen Buch und Shop noch Sinn?


> dass man sie verfolgen kann wo jenes Produkt verkauft wurde und zu welchem Preis."


Das hört sich nach einer weiteren Entität Verkaufsvorgang an. Wohin hat diese Entität Relationen?


----------

