Normalisierung einer relationalen Datenbank - Normalformen 1 bis 3

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 ต.ค. 2024

ความคิดเห็น • 75

  • @BadRix90
    @BadRix90 7 หลายเดือนก่อน +8

    ich hab in 50 Minuten hier mehr gelernt als in 1 1/2 Jahren Umschulung. Vielen Dank! 👌

    • @StefanMacke
      @StefanMacke  7 หลายเดือนก่อน

      Das freut mich sehr! 😄

  • @marcelleusch5915
    @marcelleusch5915 ปีที่แล้ว +7

    Mega, dass du uns das hier kostenlos zur Verfügung stellst! Hilft mir sehr für unsere Azubis!

    • @StefanMacke
      @StefanMacke  ปีที่แล้ว

      Gern geschehen! Freut mich, wenn ich helfen kann.

  • @User-fc7iw
    @User-fc7iw 4 หลายเดือนก่อน +1

    Ich kommentiere selten, aber das ist mir ein Bedürfnis. Wirklich super erklärt, mit wichtigem Inhalt und aufs Wesentliche fokussiert, Vielen Dank!

    • @StefanMacke
      @StefanMacke  4 หลายเดือนก่อน +1

      Danke, das freut mich. :-)

  • @emmarosscyubahiro5943
    @emmarosscyubahiro5943 5 หลายเดือนก่อน +1

    Die beste Erklärung zur Normalisierung, die ich je gehört habe. Top! 👌.Danke

    • @StefanMacke
      @StefanMacke  5 หลายเดือนก่อน

      Danke für das Lob!

  • @Le_M_Le_M
    @Le_M_Le_M 10 หลายเดือนก่อน +2

    Sehr unterschätztes Video, meine Lehrerin hat dieselbe Tabelle benutzt, aber sie hat es nicht so gut erklärt wie du. Möge Gott dich segnen.

    • @StefanMacke
      @StefanMacke  10 หลายเดือนก่อน

      Danke, das freut mich sehr!

  • @CTSB99
    @CTSB99 5 หลายเดือนก่อน

    Morgen ist die Prüfung, wenn ich bestehe dann haben deine Videos auf jeden Fall mehr dazu beigetragen als viele vergeudete Stunden in der Berufsschule, dankechön

    • @StefanMacke
      @StefanMacke  5 หลายเดือนก่อน

      Ich wünsche dir viel Erfolg!

  • @Qahnung
    @Qahnung ปีที่แล้ว +2

    Schreibe in einem Jahr meine Prüfungen und bin ihnen sehr dankbar für ihre Videos. Freue mich auf mehr :D

    • @StefanMacke
      @StefanMacke  ปีที่แล้ว +1

      Ich drücke dir die Daumen! :-)

  • @justinwiebe8171
    @justinwiebe8171 10 หลายเดือนก่อน

    Du hast mir bisher so sehr geholfen, deine Videos und deine Tipps in deinem Podcast sind der Hammer, ich empfehle allen die eine IHK Prüfungen abgelegen wollen den Podcast, die Website, diese Videos und einen vorbereitungskurs der IHK. Danke für diese Tipps und deine Erfahrungen ❤

    • @StefanMacke
      @StefanMacke  10 หลายเดือนก่อน +1

      Danke für dein Feedback. Das freut mich sehr. 😊

  • @masonatkinson2682
    @masonatkinson2682 9 หลายเดือนก่อน +1

    Hallo Herr Macke. Vielen Dank für die zahlreichen informativen Videos zum Thema IT! Diese haben mir bisher sehr weitergeholfen. Man darf dabei aber eines nicht vergessen: Chuck Norris bekommt bei Praktiker 20 Prozent auf alles. Auch auf Tiernahrung!

    • @StefanMacke
      @StefanMacke  9 หลายเดือนก่อน +1

      Hehe 😄 Ich werde beim nächsten Mal dran denken!

  • @Kl3XY_DEV
    @Kl3XY_DEV 8 หลายเดือนก่อน

    DANKE, du bist der erste wo ich es tatsächtlich verstehen konnte
    wünschte meine lehrer wären nur so gut -.-

    • @StefanMacke
      @StefanMacke  8 หลายเดือนก่อน

      Danke für das Feedback. Gern geschehen! 😊

  • @KarMa-ws3ll
    @KarMa-ws3ll 9 หลายเดือนก่อน

    Vielen Dank, habe es jetzt endlich verstanden, statt nur auswendig gelernt!

    • @StefanMacke
      @StefanMacke  9 หลายเดือนก่อน

      So soll es sein! 😊

  • @rebornyamada9324
    @rebornyamada9324 8 หลายเดือนก่อน

    Schreibe morgen meine Klausur in datenbanken und das hat mir sehr gut geholfen es besser zu verstehen.

    • @StefanMacke
      @StefanMacke  8 หลายเดือนก่อน

      Dann wünsche ich dir viel Erfolg!

  • @dironin2363
    @dironin2363 9 หลายเดือนก่อน

    Vielen Dank, Herr Macke, alles sehr gut erklärt!

    • @StefanMacke
      @StefanMacke  9 หลายเดือนก่อน

      Danke für das Feedback. Das freut mich.

  • @Ohykha
    @Ohykha 8 หลายเดือนก่อน

    Krass gut erklärt, vor allem der part mit Normalisierung der Datenbanken

    • @StefanMacke
      @StefanMacke  8 หลายเดือนก่อน

      Freut mich, dass ich helfen kann! 😊

  • @Livy2964
    @Livy2964 3 หลายเดือนก่อน

    Wunderbare Video ich hab 2 mal geschaut und notizen gemacht supi erklärkt danke danke danke!

    • @StefanMacke
      @StefanMacke  3 หลายเดือนก่อน

      Gern geschehen :-)

  • @timaya6
    @timaya6 8 หลายเดือนก่อน

    Stefan du bist der beste danke vielmals

    • @StefanMacke
      @StefanMacke  8 หลายเดือนก่อน

      Gern geschehen! ;-)

  • @aaronkatzmann2992
    @aaronkatzmann2992 9 หลายเดือนก่อน

    Mega Video

    • @StefanMacke
      @StefanMacke  9 หลายเดือนก่อน

      Danke, das freut mich! :-)

  • @fightForYourExistence
    @fightForYourExistence 6 หลายเดือนก่อน

    asserta = am Anfang & oben auf der Datenhalde vs. assertz = zuhinterst und ganz unten des Daten Heaps
    ... : Normalisierung wäre eine Vereinheitlichung der Datenspeicherung

    • @StefanMacke
      @StefanMacke  6 หลายเดือนก่อน

      Sorry, keine Ahnung was du damit sagen willst.

  • @christopher_deer
    @christopher_deer 7 หลายเดือนก่อน

    Vielen Dank für dieses Video! Das hat mir sehr geholfen!
    Ich habe eine Frage, welche bei mir auf einem Übungsblatt vorkommt. Welche Redundanzen sind denn jeweils noch in der 1. und 2. NF, vor der Überführung in die 3. NF möglich?
    Sind nicht tatsächlich alle 3 Anomalien noch möglich vor der 3. NF? (Einfüge-, Update-, Löschanomalie)

    • @StefanMacke
      @StefanMacke  7 หลายเดือนก่อน +1

      In der 1. NF sind die Tabellen quasi voll mit Redundanzen. Die wurden ja sogar explizit eingeführt, um Wiederholungsgruppen aufzulösen. Und in der 2. NF führen die transitiven Abhängigkeiten zu Redundanzen. Beispiel: Mehrere Artikel haben die gleiche Artikelgruppe mit dem gleichen Namen/Rabatt, die mehrfach identisch in der Tabelle stehen.

    • @christopher_deer
      @christopher_deer 7 หลายเดือนก่อน

      Vielen Dank! :) @@StefanMacke

  • @thacreepwalk
    @thacreepwalk 4 หลายเดือนก่อน

    Müste die 1NF nicht heißten: atomare Werte, keine wdh-Gruppen und Bestimmung eines Primärschlüssels? Weil es könnte ja sein, dass die Tabelle in der 0.ten NF, die vorliegt, keinen Primärschlüssel hat. Oder liege ich da falsch?

    • @StefanMacke
      @StefanMacke  4 หลายเดือนก่อน +1

      Den Primärschlüssel solltest du festlegen, das stimmt. Das ist aber nicht direkt Teil der Normalisierung, bei der es ja um die Vermeidung von Redundanzen geht. Und Schlüssel einzuführen verringert nicht die Redundanz. Dennoch ist das ein logischer Schritt, den du in der Praxis in der 1. NF durchführst.

    • @thacreepwalk
      @thacreepwalk 4 หลายเดือนก่อน

      @@StefanMacke Ah ok, danke 🙂👍

  • @nicohunger2729
    @nicohunger2729 ปีที่แล้ว

    heißt das, dass wenn die tabellen in der 3. Normalform vorliegen, dann bestehen nur noch 1:1 Beziehungen? hab das jetzt so verstanden, dass m:n bei der umstellung auf die 2. NF aufgelöst wird und 1:n bei der umstellung auf die 3. NF. sehe ich das richtig? danke für die wirklich sehr guten videos und podcasts.

    • @StefanMacke
      @StefanMacke  ปีที่แล้ว +1

      Nein, die Kardinalitäten zwischen den Entitäten ändern sich nicht durch die Normalformen, nur ihre Abbildung in Tabellen. Aus einer m:n-Beziehung wird keine 1:1-Beziehung, sondern quasi zwei 1:n-Beziehungen.
      Und ja, die m:n-Beziehungen werden auf NF2 aufgelöst und 1:n auf NF3. Es können aber auch mal 1:n in der NF2 dabei sein, wie @carnaqe1154 schon schrieb.

  • @schlachs4hn316
    @schlachs4hn316 6 หลายเดือนก่อน

    Ist es in der 3. Normalform nicht theoretisch auch richtig, eine neue Tabelle für PLZ & Ort zu schaffen? Da diese ja theoretisch auch redundant auftreten können, da mehrere Kunden aus z.B. Köln kommen können.

    • @StefanMacke
      @StefanMacke  6 หลายเดือนก่อน +1

      Wie würde diese Tabelle denn deiner Meinung nach aussehen? Denk daran, dass PLZ Ort eine m:n-Kardinalität hat.

    • @schlachs4hn316
      @schlachs4hn316 6 หลายเดือนก่อน

      Quasi dass Kunde die selben Attribute hat wie bisher, nur dass PLZ in Kunde ein FK ist und in der neuen Tabelle, ich nenne sie mal "Ort" PLZ der PK ist und Ort somit davon abhängig ist. An sich macht das ja keinen großen Unterschied. Aber wäre das auch richtig für die dritte Normalform oder wäre dies nicht gültig?@@StefanMacke

    • @StefanMacke
      @StefanMacke  6 หลายเดือนก่อน +1

      @@schlachs4hn316 Das geht leider so nicht. PLZ kann kein PK werden, weil sie nicht eindeutig ist. Es gibt mehrere Orte, die die gleiche PLZ haben und umgekehrt. Wie gesagt: m:n

  • @carnaqe1154
    @carnaqe1154 ปีที่แล้ว

    wurde nicht in der 2. Normalform auch schon eine 1 : N Beziehung aufgelöst mit Kunde und Bestellung? Fremdschlüssel in Bestellung?

    • @StefanMacke
      @StefanMacke  ปีที่แล้ว +1

      Ja, das stimmt. Nur die Begründung ist eine andere (Abhängigkeit vom Teilschlüssel statt transitiver Abhängigkeit).

  • @snakecaseofficial
    @snakecaseofficial 5 หลายเดือนก่อน

    "atomar" kommt etymologisch vom altgriechischen Wort "atomos", was "unteilbar" bedeuted...

    • @StefanMacke
      @StefanMacke  5 หลายเดือนก่อน

      Da hast du recht! Hier steht es auch nochmal: de.wikipedia.org/wiki/Atom

  • @saftladentv4366
    @saftladentv4366 ปีที่แล้ว

    Sie haben anfänglich erwähnt, dass es manchmal sinnvoll ist, Datenbanken nicht zu normalisieren.
    Haben Sie dafür noch ein Bsp.?
    Abgesehen von dem Aufwand, der durch eine Normalisierung entstehen könnte

    • @StefanMacke
      @StefanMacke  ปีที่แล้ว

      Durch die Normalisierung werden oft bereits bei "simplen" Abfragen viele Tabellen gejoint, da die Daten auf mehrere Tabellen verteilt und wieder verknüpft werden müssen. Diese Operationen sind recht teuer. Wenn man eine schnelle Massenverarbeitung braucht, kann es sinnvoll sein, die Datenbank zu denormalisieren und dann mit einfachen SELECTs ohne JOIN zu arbeiten. Beispiel: Data Warehouse.

    • @saftladentv4366
      @saftladentv4366 ปีที่แล้ว

      @@StefanMacke Viel Dank für die schnelle Antwort!

  • @awoolf
    @awoolf 11 หลายเดือนก่อน

    Gibt es irgendwo einen Ort, wo die Themen und evtl sogar m;glichen aufgaben stehen?

    • @StefanMacke
      @StefanMacke  11 หลายเดือนก่อน

      it-berufe-podcast.de/GAP1

  • @gamernicky4808
    @gamernicky4808 7 หลายเดือนก่อน

    Wäre dann nicht "KundenNr->PLZ->Ort" auch noch transitiv? Wenn ich zwei Kunden aus einem Ort hätte, hätte ich somit weiterhin Redundanz... (oder Fahrradkette ;?)

    • @StefanMacke
      @StefanMacke  7 หลายเดือนก่อน +1

      Ui, klassische Fehlannahme! PLZ/Ort ist eine m:n-Beziehung. Du kannst aus der PLZ nicht direkt auf den Ort schließen und auch nicht umgekehrt.

    • @Voidyz
      @Voidyz 5 หลายเดือนก่อน

      @@StefanMacke In einer Prüfung des U-Form verlages war genau dies der Fall. Dort wurde erwartet, eine weitere Tabelle "Ort" zu erstellen in welcher man die Spalten "OrtID" "PLZ" und "Ort" hat. Wäre das denn richtig? Außerdem zu dem Thema speichersparen: Auch dazu war eine Frage im U-Form Heft. Da war die "Lösung" dass die Normalisierung zu einem Höheren speicherverbrauch führt, da man mehrere Tabellen hat.

    • @StefanMacke
      @StefanMacke  5 หลายเดือนก่อน

      In dieser Tabelle wäre ja die OrtID der eindeutige PK, also richtig so. Mehr Speicherplatz wegen mehr Tabellen!? Quatsch meiner Meinung nach. Nicht die Tabellen kosten Speicher, sondern die enthaltenen Daten.

    • @Voidyz
      @Voidyz 5 หลายเดือนก่อน

      @@StefanMacke Aber die OrtID könnte man ja auch in Ihrer Tabelle anlegen oder nicht? In der aufgabe des U-Form war diese auch nicht von Anfang an gegeben sondern man sollte diese selbst erstellen

    • @StefanMacke
      @StefanMacke  5 หลายเดือนก่อน

      @@Voidyz Ja, aber was soll das bringen? Dadurch sparst du ja keine Redundanz!?

  • @tanero6922
    @tanero6922 ปีที่แล้ว

    Danke für das tolle Video. Was mich bei solchen Beispielen nur etwas stört, ist, dass sie nicht ganz praxistauglich sind. Was ist z.B. wenn der Kunde umzieht und eine neue Adresse hat. Wenn ich das in deinem Beispiel im Kundenstamm ändere, habe ich die Adressen von allen bereits bestehenden und abgeschlossenen Bestellungen auch geändert. Ich komm dann nie wieder an die alte Adresse. Was macht man da?

    • @StefanMacke
      @StefanMacke  ปีที่แล้ว +1

      Für eine Einführung muss das Beispiel etwas einfacher sein. :-) Die von dir geschilderte Anforderung ist eine "Adresshistorie", bei der du eine m:n-Beziehung zwischen Kunde und Adresse hast. Die wird dann meist über eine Zuordnungstabelle mit zusätzlichen Informationen wie "gültig ab" und "gültig bis" ergänzt. Die Details kann ich hier jetzt nicht im Kommentar darlegen.

  • @dereine7193
    @dereine7193 7 หลายเดือนก่อน

    also ehrlich jetzt, das waren 20% auf tiernahrung früher ;)

    • @StefanMacke
      @StefanMacke  7 หลายเดือนก่อน

      Hehe 😄

  • @ramon2282
    @ramon2282 5 หลายเดือนก่อน

    Ich bin sad. Du hast für die 3. NF PLZ und Ort vergessen. Und bei der 1. NF Straße und Hausnummer.🥲

    • @StefanMacke
      @StefanMacke  5 หลายเดือนก่อน

      Ich bin sad, dass du PLZ/Ort nicht als m:n erkennst. :-P Und Straße/Hausnummer habe ich im Video begründet (glaube ich).

    • @ramon2282
      @ramon2282 5 หลายเดือนก่อน

      @@StefanMacke Ok, hat bisschen gedauert bis ich mich richtig in die Aufgabe hinein gedacht habe. Ja, du hast recht man braucht keine aufteilung, weil entweder nimmt man einen Zusammengesetzten Primärschlüssel aus PLZ und Ort und dann wird die Tabelle überflüssig oder man nimmt eine PLZ_Ort_Nummer.
      Zu zweiterem: kann sein, hab nur durchgeskippt.

    • @ramon2282
      @ramon2282 5 หลายเดือนก่อน

      @@StefanMacke Finde aber echt erschreckend, dass ich das insgesamt 3 Mal im Unterricht hatte und es niemandem aufgefallen ist. 1 mal im Informaik Abi und 2 mal in der Ausbildung.

    • @StefanMacke
      @StefanMacke  5 หลายเดือนก่อน

      @@ramon2282 So sieht es aus! :-) Aber du bist nicht der erste, der PLZ/Ort so nicht auf dem Schirm hatte.