ERM Datenbanken SQL -- Aktienwert & aktueller Kurs?
Folgendes Modell hab ich zusammengebastelt anhand folgenden Textes (gekürzt):
- Aktien besitzen eine WKN (eindeutig), einen Namen sowie einen aktuellen Kurs
- n Aktien werden von m Anlegern gekauft (n:m Beziehung)
- Zu jeder Transaktion gehört das Datum und die gehandelte Menge
- Jede Aktie wird an genau einem Börsenplatz, wobei es mehrere unterschiedliche Aktienwerte gibt. (???)
Bin beim letzten Satz etwas verwirrt, vielleicht könnt ihr mir weiterhelfen. Was ist gemeint mit "es gibt mehrere unterschiedliche Aktienwerte"?
Wäre das Modell so richtig vom Sachverhalt? Macht die Tabelle "Börsenplatz" hier überhaupt Sinn und die Platzierung vom Aktienwert? Danke!
Eine andere kurze Frage: Eigentlich ist der Primärschlüssel bei "Transaktion" zusammengesetzt aus den Primärschlüssel von Anleger und Aktie, ich hab da trotzdem nochmal einen Primärschlüssel "Nummer" dazugepackt, ist das in Ordnung, macht man das so? Auf einer Rechnung steht ja auch immer "Rechnungsnummer" o.ä.
2 Antworten
Nö, die tabelle für den Namen macht keinen sinn.
Wenn du den Namen als key benutzt, hast du ja keinen gewinn speicherplatztechnisch. Wenn du jetzt einen int(bzw. einen short oder so, soviele börsenplätze gibt es ja nicht) als key nutzt kann man das schon begründen.
Sowas lohnt sich ja nur damit du den namen nicht ne millionen mal in deiner datenbank hast, sondern halt nur die, deutlich kleinere, ID von diesem platz. Aber so in der form passiert das halt nicht.
Ein zusammengesetzter primärschlüssel ergibt keinen sinn an der stelle. Es ist nämlich naheliegend das ein anlieger die selbe aktie mehrmals handeln möchte. Ein primärschlüssel muss eindeutig sein.
Dann schon, ja.
Wobei ich halt, wie gesagt, nicht den namen als Key nehmen würde. "Börse Frankfurt" verbraucht 15 bytes speicherplatz, ein short(wie gesagt, muss kein int sein, ein short reicht wohl, wirst ja nicht über 32.000 Börsenplätze haben) aber nur 2 bytes. Ein int wäre immer noch besser als key.
Kürzere keys sind prinzipiell besser wenn möglich. Du betreibst ja den ganzen spaß damit du daten möglichst nicht doppelt hast, und überall der name ist blöd.
Für mich ergeben die vier Tabellen überhaupt keinen Sinn.
Wofür soll das gut sein?
Sowas kann man doch ganz einfach in einer Exceltabelle auflisten.
Das ist eine Aufgabe aus der Schule, deshalb die Frage, ob das von dem Text her Sinn macht. Ich hab keine Ahnung von Aktien.
Den Text den ich Stichpunktartig hier geschrieben habe sollte ich als Relationales Datenmodell darstellen. Mich verwirrt der letzte Satz sehr. Das mit der ID hab ich verbessert, danke. Macht auf jeden Fall Sinn!
Hätte ich jetzt neben dem Namen als Key (oder halt einer ID) noch andere Infos wie Ort, Straße, usw., würde es dann Sinn machen?