| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen | 
	
	
		| Autor | Nachricht | 
	
		| JkerryZ JLI Master Trainee
 
  
 
 Anmeldedatum: 18.05.2004
 Beiträge: 575
 Wohnort: Wolfsburg
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 15.12.2007, 20:34    Titel: ERM in relationales Datenbankmodell umwandeln |   |  
				| 
 |  
				| Hallo! 
 ich quäle mich grade mit dem Entity Relationship Modell (ERM) rum. Kennt sich da jemand von euch aus?
 Das ERM soll in ein relationales Datenbankschema umgewandelt werden.
 Allerdings bin ich mir nicht ganz sicher, wie viele Tabellen ich brauche... ich habe acht, aber die eine kommt mir so sinnlos vor... ich weiß grad nicht wie ich da weitermachen soll. Wie würdet ihr das machen?
 Ich habe mal das Bild mit der Aufgabe hochgeladen. Vielleicht könnt ihr ja mal draufgucken
   
 
   
 Würde mich über Anregungen, Vorschläge und Co riesig freuen!!
 
 Liebe Grüße,
 JkerryZ.
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Fallen JLI MVP
 
  
  
 Alter: 41
 Anmeldedatum: 08.03.2003
 Beiträge: 2860
 Wohnort: Münster
 Medaillen: 1 (mehr...)
 
 
 | 
			
				|  Verfasst am: 15.12.2007, 21:57    Titel: |   |  
				| 
 |  
				| Sorry, aber das abe ich das letzte mal zu meiner Ausbildungszeit gehabt und da war ich ehrlich gesagt auch nicht unbedingt wissbegierig was datenbanken anging, auch wenn ich genau dieses Thema hatte. 
 Deinem Schema entnehme ich aber das du sowas in der Art brauchst (Primärschlüssel sind autoincrement int Werte):
 
 
 Zutaten:
 
 Index : Primärschlüssel
 Name : String
 Kalorien : Int
 
 Komponente:
 
 Index : Primärschlüssel
 Name : String
 
 Rezept:
 
 Komponente : Int
 Zutat: Int
 Menge : Int
 
 Hauptgericht:
 
 Index : Primärschlüssel
 Komponente : Int
 Vegetarisch : Bool
 Name : String
 Menü : Int
 
 Beilage:
 
 Index : Primärschlüssel
 Komponente : Int
 Süssspeise : Bool
 AusHundenGemacht : Bool
 Name : String
 
 Menü:
 
 Index : Primärschlüssel
 Name : String
 Hauptspeise : Int
 Preis: Int
 
 Beilagen:
 
 Menu : Int
 Beilage : Int
 
 Schnell und nicht viel überlegt dabei, ziemlich unsicher war ich mir bei der Verbindung zwischen Gerichten und Komponenten, man kann auch bestimmt noch etwas vereinfachen, aber abdecken sollte es schon alle nötigen Abfragen und deinem Schema sollte es auch entsprechen.
 _________________
 "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Maxim Senior JLI'ler
 
 
 
 Anmeldedatum: 28.03.2004
 Beiträge: 249
 
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 15.12.2007, 22:18    Titel: |   |  
				| 
 |  
				| - Jedes Rechteck ist eine Tabelle(Name in Einzahl!) - Rauten mit m-n-Beziehung ebenfalls eine Tabelle und bekommt einen Namen, der aus beiden verbundenen Tabellennamen besteht z.B. KomponenteUndZutat und zwei Fremdschlüssel (Primärschlüssel aus beiden Tabellen)
 - Die Ovale sind die nötigsten Attribute, unterstrichene Attribute sind Primärschlüssel
 
 Was ist mit der Beziehung zwischen Hauptgericht-Komponente und Hauptgericht-Beilage? Musst dann wohl selbst entscheiden
   
 Wenn mir noch was einfällt, sage ich bescheid
  kannst ja dein Zwischenergebnis hier posten   
 @Fallen: sehr lustig ^^
 
 PS: K.A. wer die Aufgabe erstellt hat, aber ERM ist nicht gut (höfflich gesagt)
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| FH Super JLI'ler
 
 
 Alter: 37
 Anmeldedatum: 16.10.2004
 Beiträge: 438
 
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 16.12.2007, 02:48    Titel: |   |  
				| 
 |  
				| Hmm... Ich darf mich wegen Schule gerade damit herumschlagen. Der Primärschlüssel in einem ERM ist immer unterstrichen. Daher muss man z.B. bei Zutat den Primärschlüssel ZName verwenden (Wie DXer schon geschrieben hat).
 Tabellen die mir so spontan einfallen:
 
 Zutat
 ZName (PRIMARY KEY)
 Kalorien
 
 Komponente
 KName (PRIMARY KEY)
 Rezept
 
 ZutatKomponente (Beziehungstabelle)
 Hier wird es jetzt ungenau. Bei folgenden 3 Attributen bin ich mir noch sicher:
 KName (FOREIGN KEY)
 ZName (FOREIGN KEY)
 Menge
 Nun bleibt nur die Frage, ob ich da noch nen Primärschlüssel hinzufügen darf. Soweit ich weiß, schon. Dann käme noch
 ID (PRIMARY KEY)
 hinzu.
 
 Hauptgericht
 Hmm... Wie das hier mit dem Primärschlüssel aussieht ist mir auch ein Rätsel. Die Tabelle braucht definitiv einen, also mach ich mir halt einen. KA, ob das nach dem Diagramm erlaubt is, weil da hat Hauptgericht keinen Primärschlüssel.
 ID (PRIMARY KEY)
 Vegetarisch
 MName (FOREIGN KEY)
 
 Beilage
 Wegen Primärschlüssel-Frage siehe Hauptgericht...
 ID (PRIMARY KEY)
 Süßspeise
 
 Menü
 MName (PRIMARY KEY)
 Preis
 Hauptgericht_ID (FOREIGN KEY)
 
 BeilageMenü (Beziehungstabelle)
 Wegen Primärschlüssel siehe ZutatKomponente...
 MName (FOREIGN KEY)
 Beilage_ID (FOREIGN KEY)
 ID (PRIMARY KEY)
 
 Das war es soweit. Zwischen Hauptgericht und Komponente sind keine Kardinalitäten (die Ziffern bzw. n oder m da in dem Diagramm an den Linien
  ) angegeben. Von daher schreib ich da nix zu, weil ich nicht weiß, wie da die Aufgabenstellung ist. Was die Qualität des ERM angeht, muss ich DXer beipflichten.
 Gruß und gn8
 
 FH
 _________________
 goto work, send your kids to school
 follow fashion, act normal
 walk on the pavement, watch T.V.
 save for your old age, obey the law
 Repeat after me: I am free
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| JkerryZ JLI Master Trainee
 
  
 
 Anmeldedatum: 18.05.2004
 Beiträge: 575
 Wohnort: Wolfsburg
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 16.12.2007, 10:14    Titel: |   |  
				| 
 |  
				| Hallo Jungs   
 so ähnlich habe ich das auch gemacht. Nur habe ich die IDs weggelassen. Zusätzliche Schlüssel sollten nach Möglichkeit nur eingeführt werden, wenn gar nichts anderes mehr geht. Ich weiß nicht ob das so ist. Was mir halt die Schwierigkeiten bereitet ist diese doofe Vererbung. Der Rest geht eigentlich.
 Hmm also ich habe insgesamt acht Tabellen, wobei mir Nr. 7 komisch vorkommt, da sie die gleichen Informationen wie Nr. 6 beinhaltet. Und Fallen und FH haben auch jeweils nur 7 Tabellen, was meine Vermutung nur bestätigt
   
 Also ich habe folgendes Ergebnis:
 
 1. Zutat:
 ZName
 Kalorien
 
 2. Komponente:
 KName
 Rezept
 
 3. Beinhaltet:
 ZName (aus 1.)
 KName (aus 2.)
 Menge
 
 4. Hauptgericht:
 KName (aus 2.)
 vegetarisch
 
 5. Beilage:
 KName (aus 2.)
 Süßspeise
 
 6. Menü.Hauptgericht:
 KName (jetzt aus 4.)
 vegetarisch
 MName (aus 7.)
 Preis
 
 7. Menü.Beilage:
 MName
 Preis
 
 8. Beilage.teil von Menü:
 MName (aus 7.)
 KName (aus 5.)
 
 
 Was meint ihr dazu?
 
 Grüße,
 JkerryZ.
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Fallen JLI MVP
 
  
  
 Alter: 41
 Anmeldedatum: 08.03.2003
 Beiträge: 2860
 Wohnort: Münster
 Medaillen: 1 (mehr...)
 
 
 | 
			
				|  Verfasst am: 16.12.2007, 10:26    Titel: |   |  
				| 
 |  
				| Einen String als Primärschlüssel, das erscheint mir einfach nicht richtig. _________________
 "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Maxim Senior JLI'ler
 
 
 
 Anmeldedatum: 28.03.2004
 Beiträge: 249
 
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 16.12.2007, 11:04    Titel: |   |  
				| 
 |  
				|  	  | Fallen hat Folgendes geschrieben: |  	  | Einen String als Primärschlüssel, das erscheint mir einfach nicht richtig. | 
 
 richtig! es ist nicht schön
   
 
 @JkerryZ:
 Vererbung???  ---> Tabellen 6-8 stimmen nicht...
 
 "3. Beinhaltet" ---> "ZutatKomponente" oder "ZutatUndKomponente" oder ähnlich.
 
 nach dem bild müssten es 9 Tabellen sein: Zutat, KomponenteZutat, Komponente, KomponenteBeilage, KomponenteHauptgericht, Hauptgericht, Beilage, MenueBeilage, Menue. ich habe einfach eine m-n-Beziehung zwischen Komponente und Beilage bzw. Komponente und Hauptgericht angenommen.
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| JkerryZ JLI Master Trainee
 
  
 
 Anmeldedatum: 18.05.2004
 Beiträge: 575
 Wohnort: Wolfsburg
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 16.12.2007, 22:26    Titel: |   |  
				| 
 |  
				|  	  | Maxim hat Folgendes geschrieben: |  	  | @JkerryZ:
 Vererbung???  ---> Tabellen 6-8 stimmen nicht...
 
 nach dem bild müssten es 9 Tabellen sein: Zutat, KomponenteZutat, Komponente, KomponenteBeilage, KomponenteHauptgericht, Hauptgericht, Beilage, MenueBeilage, Menue. ich habe einfach eine m-n-Beziehung zwischen Komponente und Beilage bzw. Komponente und Hauptgericht angenommen.
 | 
 
 9 Tabellen? Bist du sicher? Die Vererbung ist halt mein dickes Problem... Wir haben das auch nicht richtig behandelt und nun kommt es so als Weiterdenkaufgabe dran... Die anderen beiden Jungs haben jeweils nur 7 Tabellen.
  Was meinen die anderen? Bin mir leider auch absolut unsicher...
   
 Dank und Grüße,
 JkerryZ.
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| JkerryZ JLI Master Trainee
 
  
 
 Anmeldedatum: 18.05.2004
 Beiträge: 575
 Wohnort: Wolfsburg
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 18.12.2007, 15:06    Titel: |   |  
				| 
 |  
				| Gut, ich weiß jetzt, dass es 6 Tabellen sein müssen. Das kann man berechnen.
 
 Die 6 Tabellen müssen die folgenden sein:
 
 1. Zutat:
 ZName
 Kalorien
 
 2. Komponente:
 KName
 Rezept
 
 3. Beinhaltet:
 ZName
 KName
 Menge
 
 4. Beilage:
 KName
 Süßspeise
 
 5.Menü, Hauptgericht:
 MName
 Preis
 KName <--- Muss der hier noch als Schlüssel gekennzeichnet werden?
 vegetarisch
 
 6. Beilage, Teil von Menü:
 MName
 KName
 
 
 Die abschließende Frage ist, muss in Tabelle 5 neben MName auch noch KName als Schlüssel gekennzeichnet werden?
 Hoffe ihr könnt mir da helfen. Beim Rest bin ich mir jetzt allerdings ziemlich sicher..
 Danke,
 Grüße,
 JkerryZ.
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Maxim Senior JLI'ler
 
 
 
 Anmeldedatum: 28.03.2004
 Beiträge: 249
 
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 18.12.2007, 20:22    Titel: |   |  
				| 
 |  
				|  	  | JkerryZ hat Folgendes geschrieben: |  	  | Gut, ich weiß jetzt, dass es 6 Tabellen sein müssen. Das kann man berechnen.
 
 | 
 
 Berechnen? Wie geht das?
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| JkerryZ JLI Master Trainee
 
  
 
 Anmeldedatum: 18.05.2004
 Beiträge: 575
 Wohnort: Wolfsburg
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 18.12.2007, 20:28    Titel: |   |  
				| 
 |  
				| Mein Prof meint: Anzahl der Entities + Anzahl der m:n Beziehungen + Anzahl der 1:n Beziehungen mit zusätzlichen Attributen - 1:1 Beziehungen. 
 Hier also:
 
 5 Entities + 2 m:n Beziehungen - eine 1:1 Beziehung = 6
 
 JkerryZ.
 
 aber wie das mittem Schlüssel ist oder nicht hat er sich nicht entlocken lassen...
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| Maxim Senior JLI'ler
 
 
 
 Anmeldedatum: 28.03.2004
 Beiträge: 249
 
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 18.12.2007, 20:44    Titel: |   |  
				| 
 |  
				| ach ok, es würde mich echt interessieren, wie die DB am ende aussieht und ob es so funktioniert ^^ 
 wegen den schlüsseln: du musst noch zwischen Primär- und Fremdschlüssel unterscheiden...
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		| JkerryZ JLI Master Trainee
 
  
 
 Anmeldedatum: 18.05.2004
 Beiträge: 575
 Wohnort: Wolfsburg
 Medaillen: Keine
 
 
 | 
			
				|  Verfasst am: 18.12.2007, 22:33    Titel: |   |  
				| 
 |  
				|  	  | Maxim hat Folgendes geschrieben: |  	  | wegen den schlüsseln: du musst noch zwischen Primär- und Fremdschlüssel unterscheiden... | 
 
 Argh, ja.. das ist ja dann bei allen so... lieg ich richtig mit:
 
 Tabelle 3: beides Fremdschlüssel,
 
 Tabelle 4: Fremdschlüssel
 
 Tabelle 5: MName ist Hauptschlüssel, KName Fremdschlüssel
 
 und Tabelle 6: wieder beides Fremdschlüssel??
 
 Vielen Dank,
 Grüße,
 JkerryZ.
 |  | 
	
		| Nach oben |  | 
	
		|  | 
	
		|  |