Zu wissen, gerade genug über Relationale Datenbanken

Der Aufbau eines Systems in Oracle oder einem anderen Produkt relationalen Datenbank macht es nicht automatisch eine relationale Datenbank. Ebenso können Sie eine ganz gute relationalen Datenbank entwerfen und implementieren sie in etwas anderes als eine relationale Datenbankprodukt. Wir diskutieren zwei wichtige Bereiche:

  • Was bedeuten die Menschen durch relationale Datenbank?
  • Was ist die Oracle relationale Datenbank Produkt?

Was macht eine Datenbank "relational"?

Wenn eine Datenbank wird beschrieben als relational, es wurde entwickelt, die genannt (zumindest meistens) auf eine Reihe von Praktiken zu entsprechen Regeln der Normalisierung. Eine normalisierte Datenbank ist eine, die die Regeln der Normalisierung folgt.

Zum Beispiel, in einer Organisation, haben Sie Mitarbeiter, die in bestimmten Abteilungen arbeiten. Jeder Mitarbeiter und Abteilung hat eine Nummer und einen Namen. Sie können diese Informationen organisieren, wie in Tabelle 1 gezeigt.

Tabelle 1: Beispielmitarbeiterinformationen

EmpNoEnameAbteilungNrDEPTNAME
101Abigail10Marketing
102Bob20Einkauf
103Carolyn10Marketing
104Doug20Einkauf
105Evelyn10Marketing

Wenn Sie Ihre Daten auf diese Weise zu strukturieren und bestimmte Änderungen vornehmen, werden Sie Probleme haben. Zum Beispiel werden alle Mitarbeiter in der Einkaufsabteilung zu löschen beseitigen die Abteilung selbst. Wenn Sie den Namen der Marketingabteilung ändern zu "Werbung", müssten Sie die Aufzeichnung der einzelnen Mitarbeiter in dieser Abteilung zu ändern.

Mit den Prinzipien der relationalen Datenbanken, können die Mitarbeiter und Abteilungsdaten in zwei getrennte Tabellen (DEPT und EMP) neu strukturiert werden, wie in den Tabellen 2 und 3 gezeigt.

Tabelle 2: Eine Probe Relational DEPT Tabelle

AbteilungNrDEPTNAME
10Marketing
20Einkauf

Tabelle 3: A-Probe Relational EMP Tabelle

EmpNoENAMEAbteilungNr
101Abigail10
102Bob20
103Carolyn10
104Doug20
105Evelyn10

Durch diese Struktur verwenden, können Sie die Tabelle EMP untersuchen, um herauszufinden, dass Doug in Abteilung arbeitet 20. Dann können Sie die Tabelle DEPT überprüfen, um herauszufinden, dass Abteilung 20 Einkauf. Man könnte denken, dass Tabelle 1 effizienter aussieht. Allerdings müssen die Informationen Abrufen in einer Reihe von verschiedenen Möglichkeiten ist viel einfacher, mit dem Zweitabellenstruktur. Fügen Sie die Informationen in den beiden Tabellen für effizientere Retrieval ist genau das Problem, dass relationale Datenbanken wurden entwickelt, um zu lösen.

Wenn die Tabellen in der Datenbank durchgeführt werden, werden die Informationen in den beiden Tabellen durch die Verwendung spezieller Spalten verknüpft genannt Fremdschlüssel. Im Beispiel ist die Spalte DEPTNO der Fremdschlüssel der Abteilung und Mitarbeiter Tabellen verknüpfen.

Tabellen 4 und 5 zeigen eine weitere gemeinsame Datenbankstruktur, nämlich eine Bestellung (PURCH_ORDER Tabelle) für ein Element und die mit der Bestellung (PURCH_ORDER_DTL Tabelle), die Informationen Details.

Tabelle 4: A-Probe Relational PURCH_ORDER Tabelle

PO_NbrDatum
45012.10.2006
4512006.02.26
4522006.03.17
4532006.06.05

Tabelle 5: A-Probe Relational PURCH_ORDER_DTL Tabelle

PO_NbrLine_NbrArtikelAnzPreis
4501Hammer1$ 10,00
4511Schraubendreher1$ 8,00
4512Zange2$ 6,50
4513Schlüssel1$ 7,00
4521Schlüssel3$ 7,00
4522Hammer1$ 10,00
4531Zange1$ 6,50

Eine Bestellung kann viele Elemente enthalten. Tabelle 5 zeigt, dass die Bestellung 451 drei separate Elemente enthält. Der Link (Fremdschlüssel) zwischen den Tabellen ist die Bestellnummer.

Verständnisgrund Datenbank Terminologie

Eine Datenbank besteht aus Tabellen und Spalten, wie in dem vorhergehenden Abschnitt beschrieben. Es gibt einige andere Begriffe, die Sie kennen, um müssen verstehen, wie Datenbanken arbeiten. Eine Datenbank wird in zwei Stufen aufgebaut. Zunächst erstellen Sie eine logische Datenmodell das Design der Datenbank anzulegen und wie die Daten organisiert werden. Dann implementieren Sie die Datenbank nach dem physische Datenmodell, die oben stellt die tatsächlichen Tabellen und Spalten. Unterschiedliche Terminologie gilt für die Elemente der logischen und physischen Designs. Darüber hinaus verwenden relationalen Datenbank-Designer verschiedene Wörter aus der objektorientierten (OO) Datenbank-Designer die Datenbankelemente zu beschreiben. Tabelle 6 zeigt die Wörter in jedem dieser Fälle verwendet.

Tabelle 6: Datenbank-Design-Terminologie

Logische / RelationalLogische / Objektorientiertesphysikalische Implementierung
WesenKlasseTabelle
AttributAttributSpalte
BeispielObjektReihe

Die Definitionen der Worte in Tabelle 6 sind wie folgt:

  • Entität: Ein Unternehmen entspricht etwas in der realen Welt, die von Interesse ist, und dass Sie Informationen zu speichern möchten. Beispiele von Unternehmen gehören Dinge wie Abteilungen innerhalb einer Organisation, Mitarbeiter oder Umsatz. Jede bestimmte Abteilung oder Mitarbeiter wird als ein Beispiel dieser Einheit. Beispielsweise in Tabelle 3, Doug ist eine Instanz der Entität Mitarbeiters. (In der OO Welt würde Doug ein Objekt in der Employee-Klasse sein.)
  • Attribut: Dieses Wort wird in relationalen und OO-Datenbanken verwendet, um Informationen über eine Entität Instanz darzustellen oder ein Objekt, das verfolgt werden soll. Ein Beispiel für ein Attribut könnte das Geburtsdatum oder Sozialversicherungsnummer eines Mitarbeiters sein.
  • Entitäten (Klassen), deren Attribute und Instanzen (Objekte): Diese werden in der Datenbank als Tabelle implementiert, Spalten und Zeilen sind.

Ein weiteres wichtiges Konzept zu verstehen, wenn sie mit relationalen Datenbanken Umgang der Primärschlüssel ist. EIN Primärschlüssel eindeutig identifiziert eine bestimmte Instanz eines Unternehmens. Keine zwei Instanzen eines Unternehmens können die gleichen Primärschlüssel haben. Die Werte aller Teile des Primärschlüssels darf nicht null sein. Die häufigsten Arten von Primärschlüsseln in relationalen Datenbanken sind ID-Nummern. Beispielsweise in Tabelle 3 kann die EmpID der Primärschlüssel sein. Manchmal mehr als ein Attribut (oder Sätze von Attributen) als Primärschlüssel verwendet werden. Diese Attribute werden genannt Schlüsselkandidaten, von denen ein Satz muss als Primärschlüssel bezeichnet werden.

Menü