PMG2224 1/DB Beleg/Lydia
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>SQL</language> <center> =='''''Mein Datenbankprojekt am Beispielen von verschiedenen Sportvereinen'''''== </center> ==='''Inhaltsverzeichnis'''=== # Einleitung ## Was ist eine Datenbank? ## Einführung in mein Thema ## Begründung meiner Themenwahl # Mein ERM ## Begründung meines Aufbaus ## Begründung meiner Relationen # Mein Relationenmodell # Erstellen meiner Datenbank # Erstellen verschiedener Abfragen # Meine kritische Reflexion ==='''Einleitung'''=== In folgenden Projekt werde ich zu meinem gewählten Thema ein ERM-Modell, ein Relationenmodell und eine dazugehörige Datenbank erstellen. Ebenfalls verschiedene und sinnvolle Abfragen für meine Datenbank entwickeln und zum Schluss noch mein Projekt kritisch reflektieren. ===='''Was ist eine Datenbank?'''==== Im Allgemeinem ist eine Datenbank eine strukturierte Sammlung von Daten, die beispielsweise auf einem Computer strukturiert gespeichert sind. Sie ermöglicht es, Informationen effizient zu speichern, abzurufen und zu verwalten. Datenbanken werden häufig verwendet, um große Mengen von Daten zu organisieren und zu analysieren. Die Datenbank umfasst meist Schlüssel zur Identifizierung von Datensätzen, Datenschemata zur Definition von Tabellenstrukturen und Indexen zur Beschleunigung von Abfragen und Anweisungen. Hierbei gibt es verschiedene Arten von Datenbanken: 1. ERM (Entity-Relationship-Modell): grafische Darstellung von Strukturen durch Entitäten, Attributen und Relationen 2. RM (Relationales Modell): Datenbankmodell, dass Datensätze in Tabellen zeigt 3. SQL (Structured Query Language): Programmiersprache zur Kommunikation zwischen Datenbanken und zur Verwaltung von Daten ===='''Einführung in mein Thema'''==== Im Jahr 2023 wurden bundesweit etwa 24,2 Millionen Mitglieder in den deutschen Sportvereinen gemeldet. Mit knapp 5,1 Millionen Mitgliedern in Sportvereinen verzeichnete das bevölkerungsreichste Bundesland, Nordrhein-Westfalen die höchste Stellung im Vereinssport. Aber auch in anderen Bundesländern zeigt sich eine immer größer werdende Mitgliederanzahl, beispielsweise stieg es in Sachsen auf 16,6 prozentigen Anteil zur Gesamtbevölkerung und auch Mecklenburg-Vorpommern steigt auch auf ungefähr 15,7 Prozent. Gleichzeitig entdecken immer mehr Vereine die Vorzüge eines jährlichen Trainingslagers. ===='''Begründung meiner Themenwahl'''==== Ich bin selbst in einem Sportverein gemeldet, was für mich selbst ein schöner Ausgleich zum allgemein stressigen Alltag darstellt. Ich kann hier nicht nur meinen Sport mit großer Leidenschaft ausüben, sondern habe auch noch eine Gemeinschaft um mich herum die das selbe tut. Vereine sind meiner Meinung nach heutzutage wichtiger denn je und das nicht nur wegen der Modernisierung der Technik. Hier entsteht ein Gemeinschaftsgefühl, man findet neue Freunde und hat einfach Spaß. Ebenso ist für mich das jährliche Trainingslager ein Highlight. Dort lernt man nicht nur neue Techniken zur Weiterentwicklung, sondern auch seine Mitglieder noch besser kennen. Zum Beispiel bei einem gemeinsamen Frühstück oder bei einem Ausflug am Nachmittag. Ebenfalls ist es eine Abwechslung zu allgemeinen Trainingsangeboten, durch andere Trainer und auch durch einen anderen Ort, der vielleicht weit weg von zu Hause ist. Ein Verein ist für mich nicht nur ein Angebot was man wahrnehmen kann, sondern eine Gemeinschaft die jeder braucht. Deshalb finde ich es sinnvoll für dieses Thema eine eigene Datenbank zu erstellen. Somit kann jeder schauen welche Sportangebote es in den Vereinen gibt und sieht gleichzeitig ob sie ein Trainingslager anbieten. Somit könnten auch beispielsweise mehrere Vereine gemeinsam in ein Trainingslager fahren. Dadurch wäre es glaube ich einfacher junge und auch alte Leute für den Vereinssport zu begeistern. ==='''Mein ERM'''=== [[Bild:Lyds_ERM3.png]] ===='''Begründung meines Aufbaus'''==== Meine selbstgewählten Entitäten und Attribute sind so konstruiert: '''Verein''': Diese Entität repräsentiert die Vereine in ganz Deutschland, welche Sportarten anbieten. Die Attribute enthalten einen Primärschlüssel (Vereinsnr), welcher zur eindeutigen Zuordnung dient. Des weiteren wurden Attribute wie Gründungsjahr oder Bundesland gewählt, um wichtige Informationen zu speichern. Hier beispielsweise der Ort des Vereins. '''Sportart''': Diese Entität zeigt die Sportarten, welche von den Vereinen in ganz Deutschland angeboten werden. Ebenfalls enthalten diese Attribute auch einen Primärschlüssel (Sportnr) und ich wählte Attribute wie Hilfsmittel oder ob der Sport ein Teamsport ist. '''Trainingsgruppe''': Diese Entität repräsentiert die Trainingsgruppen, welche verschiedene Sportarten anbieten (haben). Natürlich ist hier auch ein Primärschlüssel in den zugehörigen Attributen zu finden. Die Trainingsnr dient zur eindeutigen Zuordnung, da beispielsweise auch mehrere Gruppen am selben Wochentag trainieren können. '''Trainingslager''': Diese Entität zeigt die Trainingslager, wo die verschiedenen Trainingsgruppen hinfahren. Hier wird ebenfalls ein Primärschlüssel verwendet (Trainingslagernr), dieser dient zur eindeutigen Zuordnung. Da es zum Beispiel auch mehrere Trainingslager in einer Stadt oder in einem Land geben kann. Des weiteren Attribute wie Kosten oder Ferien, um allgemeine Informationen zu speichern. ===='''Begründung meiner Relationen'''==== Meine selbstgewählten Relationen sind so konstruiert: Die Beziehungen zwischen den Entitäten wurden nach meiner Datenbank-Idee entwickelt. '''Erste Relation:''' Bei meinem Datenmodell bietet ein Verein mehrere Sportarten an. Und gleichzeitig wird die ein Sportart von mehreren Vereinen angeboten. Somit entsteht eine '''n:m Beziehung'''. '''Zweite Relation:''' Hier wird gezeigt, dass eine Sportart mehrere Trainingsgruppen hat (in ganz Deutschland) aber eine Trainingsgruppe übt nur eine Sportart aus. Somit entsteht eine '''1:n Beziehung'''. Es können also beim Datensatz aus Tabelle Sportarten mehrere Datensätze aus der Tabelle Trainingsgruppe zugeordnet sein. Umgekehrt kann aber einem Datensatz aus Tabelle Trainingsgruppe nur ein einzelner Datensatz aus Tabelle Sportarten zugeordnet sein. Dies kann man sich wie eine Mutter-Kind-Beziehung vorstellen. '''Dritte Relation:''' Gleich sieht es bei der dritten Relation meiner Datenbank aus. Eine Trainingsgruppe fährt in mehrere Trainingslager aber ein Trainingslager wird immer nur von einer Trainingsgruppe belegt. Somit entsteht auch hier eine '''1:n Beziehung'''. ==='''Mein Relationenmodell'''===