Heim >Datenbank >MySQL-Tutorial >Allgemeine Schritte und Beispiele zum Entwerfen einer Datenbank
MySQL wird auf jeden Fall in der aktuellen Programmentwicklung verwendet. MySQL ist ein kleines relationales Open-Source-Datenbankverwaltungssystem. Der Entwickler ist das schwedische Unternehmen MySQL AB. Derzeit wird MySQL häufig auf kleinen und mittelgroßen Websites im Internet verwendet. Aufgrund der geringen Größe, der hohen Geschwindigkeit, der niedrigen Gesamtbetriebskosten und insbesondere der Eigenschaften von Open Source wählen viele kleine und mittlere Websites MySQL als Website-Datenbank, um die Gesamtbetriebskosten der Website zu senken. In diesem Artikel werden wir über die allgemeinen Schritte und Beispiele zum Entwerfen einer Datenbank sprechen.
1. Allgemeiner Prozess des Datenbankdesigns
1. Überblick
Einschließlich Auswahl des Kursdesigns, Projekthintergrund, Zweck des Schreibens des Kursdesignberichts, Organisation des Kursdesignberichts, usw. .
2. Anforderungsanalyse von Kursgestaltungsaufgaben
2.1 Gestaltungsaufgaben
2.2 Gestaltungsanforderungen
2.3 Spezifikationsdokumente zur Anforderungsbeschreibung
3. Konzeptionelles Strukturdesign
3.1 Konzeptionelles Strukturdesign-Tool (E-R-Modell)
3.2XXX-Subsystem (teilweise)
3.2.1 Subsystembeschreibung
3.2 .2 Punkte E-R-Diagramm
3.2.3 Beschreibung
3.3YYY-Subsystem
3.3.1 Subsystembeschreibung
3.3.2 Punkte E-R-Abbildung
3.3.3 Beschreibung
……
3.X Gesamt-E-R-Diagramm
3.X.1 Integration des E-R-Diagramms
3. X.2 Gesamt-ER-Diagramm
4. Logisches Strukturdesign
4.1 Relationales Datenmodell
4.2 Ansichtsdesign
4.3 Optimierung
5. Physischer Entwurf und Implementierung der Datenbank
5.1 Einführung in die Hardware- und Softwareumgebung für Datenbankanwendungen
5.2 Entwurf der physischen Struktur
5.3 Indexentwurf
5.4 Etablierung Datenbank
5.5 Datenbanktestdaten laden
6. Datenoperationsanforderungen und -implementierung
6.1 Datenabfrageoperation
6.2 Datenaktualisierungsoperation
6.3 Datenpflegevorgänge
6.4 Sonstiges
7. Implementierung des Datenbankanwendungssystems
9. Referenzen
2. Beispiel: Kursauswahlmanagementsystem für Studenten
Im Lehrmanagementsystem von Hochschulen und Universitäten ist das Kursauswahlmanagement für Studenten ein sehr wichtiges Funktionsmodul.
Anforderungsanalyse:
Das System sollte in der Lage sein, die Lehrerinformationen der Schule, Schülerinformationen, Berufsinformationen, Informationen zu allen von der Schule angebotenen Kursen, Informationen zu Wahlfächern der Schüler usw. zu verwalten . Das Kursauswahlsystem erfüllt im Wesentlichen die Anforderungen von drei Benutzertypen, nämlich Systemadministratoren, Lehrenden und Studierenden des Studienbüros. Die Betriebsberechtigungen und Betriebsinhalte sind unterschiedlich. Die spezifische Bedarfsanalyse sieht wie folgt aus:
Systemadministrator
verwaltet die grundlegenden persönlichen Daten der Schüler und ermöglicht das Hinzufügen, Löschen und Ändern der persönlichen Daten der Schüler.
Zu den Schülerinformationen gehören...
Pflege der grundlegenden persönlichen Daten von Lehrern und Realisierung des Hinzufügens, Löschens und Änderns der persönlichen Daten von Lehrern.
Lehrerinformationen umfassen...
Pflege der grundlegenden persönlichen Informationen des Kurses und Realisierung des Hinzufügens, Löschens und Änderns der persönlichen Informationen des Kurses.
Kursinformationen umfassen...
Studentenbenutzer
persönliche Informationen abfragen und ändern.
Kursauswahlvorgänge durchführen
Studenten können die von ihnen ausgewählten Kursinformationen und die Noteninformationen zuvor ausgewählter Kurse anzeigen.
Lehrerbenutzer
Persönliche Informationen abfragen und ändern
Nach Kursende Ergebnisse registrieren
Lehrer können ihren Unterrichtsplan überprüfen.
Konzeptioneller Strukturentwurf einer Datenbank:
Ein gängiges Werkzeug für den konzeptionellen Strukturentwurf ist das ER-Diagramm. Vervollständigen Sie es in den folgenden Schritten.
Datenabstraktion (Abstraktion von Entitäten). Zeichnen Sie das Attributdiagramm jeder Entität.
Entwerfen Sie ein ER-Diagramm. Finden Sie die Entitäten und ihre Verbindungen und zeichnen Sie ein ER-Diagramm.
Fügen Sie die einzelnen ER-Diagramme zusammen, um ein vorläufiges ER-Diagramm zu erstellen.
Globales ER-Diagramm. Fügen Sie die Attribute jeder Entität zum vorläufigen ER-Diagramm hinzu, um mögliche lokale Konflikte (einschließlich Attributkonflikte, Namenskonflikte und Strukturkonflikte) zu beseitigen und ein globales ER-Diagramm zu erstellen.
Entwurf der logischen Datenbankstruktur:
Konvertieren Sie zunächst die Entitäten und Beziehungen im ER-Diagramm des konzeptionellen Modells in ein Datenmodell. In RDBMS wird es in ein relationales Schema umgewandelt und die Attribute bestimmt und Attribute des relationalen Schemas.
Die Grundregeln für die Konvertierung von ER-Diagrammen in relationale Datenmodelle lauten wie folgt:
Wenn eine Entität in ein relationales Schema konvertiert wird, sind die Attribute der Entität die Attribute der Beziehung und Die Schlüssel der Entitäten sind die Schlüssel der Beziehung.
Wenn die Beziehung zwischen Entitäten 1:1 ist, wird die Beziehung nicht separat in ein Beziehungsschema umgewandelt. Der Schlüssel und der Kontakt des anderen Beziehungsschemas müssen zu einem der entsprechenden Beziehungsschemata hinzugefügt werden zwei Einheiten.
Wenn die Beziehung zwischen Entitäten 1:n ist, wird die Beziehung nicht separat in ein Beziehungsschema umgewandelt. Der Schlüssel des Beziehungsschemas, der der n-seitigen Entität entspricht, und die Attribute der Beziehung müssen hinzugefügt werden zum Beziehungsschema, das der n-seitigen Entität entspricht.
Wenn die Beziehung zwischen Entitäten m:n ist, wird die Beziehung auch in einen Beziehungsmodus umgewandelt. Ihre Attribute sind die Codes der Entitätstypen an beiden Enden plus die Attribute der Beziehung und die Schlüssel der Beziehung sind die Entitäten an beiden Enden Kombination von Codes.
Zweitens führen Sie die notwendige Zusammenführung von Beziehungsmustern mit demselben Primärschlüssel durch.
Beziehungsoptimierung
Anhand der Normalisierungstheorie wird das relationale Datenmodell optimiert. Normalisiert zur dritten Normalform.
Physischer Entwurf und Implementierung der Datenbank:
Beinhaltet hauptsächlich die folgenden Arbeiten:
Datenbank erstellen
Basistabellen erstellen, Einschränkungen festlegen und Basistabellen verwalten.
Indizes erstellen und verwalten. (DBMS erstellt automatisch einen Index für den Primärschlüssel. Erstellen Sie einen Index, um die Abfrageeffizienz zu verbessern.)
Ansichten erstellen und verwalten.
Geben Sie Daten in die Datenbank ein.
Verwenden Sie SQL-Anweisungen zum Abfragen, Ändern, Löschen und für andere Vorgänge an Daten. (Sie können zunächst darüber nachdenken, wie Sie die Datenbank manipulieren und später implementieren)
Schreiben Sie gespeicherte Prozeduren, Trigger usw. und bestehen Sie das Debugging. (Erstellen Sie beispielsweise einen Auslöser, um den Kursauswahldatensatz in der Kursauswahltabelle automatisch zu löschen, wenn ein Student mit einer bestimmten Studentennummer aus der Studententabelle gelöscht wird.)
Datenbankbetrieb und -wartung:
Enthält hauptsächlich die folgenden Inhalte:
Datenbanksicherung und -wiederherstellung
Datenbanksicherheit und -integritätskontrolle
Datenbankleistungsüberwachung, -analyse und -verbesserung
Zugriff auf die Datenbank über Die folgenden Anweisungen manipulieren Daten.
Fügen Sie Einschränkungen zu den Geschlechts- und Altersfeldern der Schülertabelle hinzu.
Fügen Sie eine Attributspalte „Anmeldezeit“ hinzu.
Ändern Sie den Datentyp „professionell“.
Fügen Sie die Einschränkung hinzu, dass der Kursname einen eindeutigen Wert haben muss.
Erstellen Sie einen Index zu den Spalten „Studierendennummer“ und „Kursnummer“ in der Kursauswahltabelle.
Erstellen Sie einen Index zur „Jobnummer“ und „Kursnummer“ in der Kursauswahltabelle.
Angenommen, es gibt 4 Abteilungen im Kursauswahlsystem für Studenten. Um dem Lehrmanagementpersonal jeder Abteilung die Anzeige der Studenteninformationen der Abteilung zu erleichtern, erstellt jede Abteilung eine Studentenansicht.
Erstellen Sie eine Ansicht, die die Kursauswahl der Studierenden widerspiegelt.
Studierende können ihre Kursauswahlinformationen anhand ihrer Studierendennummer oder ihres Namens überprüfen.
Studenten können ihre grundlegenden Informationen anhand der Studentennummer oder des Namens überprüfen.
Listen Sie die Transkripte eines bestimmten von einem Lehrer unterrichteten Kurses auf und zeigen Sie sie in aufsteigender oder absteigender Reihenfolge an.
Listen Sie Informationen zu allen Kursen auf, die von einem Lehrer unterrichtet werden.
Fragen Sie die Kreditinformationen ab, die ein Student erhalten hat.
Statistiken über die durchschnittliche Punktzahl, die höchste Punktzahl und die niedrigste Punktzahl eines bestimmten Lehrerkurses.
Neuen Kurs hinzufügen.
Ändern Sie die Credits eines bestimmten Kurses.
Erstellen Sie einen Löschauslöser. Wenn ein Student mit einer „Studentennummer“ in der Studententabelle gelöscht wird, wird der Kursauswahldatensatz des Studenten automatisch gelöscht Für die Studententabelle erstellt, um eine Kaskadenlöschung der Studententabelle und der Kursauswahltabelle zu erreichen.
Erstellen Sie einen Löschauslöser. Wenn ein Kurs mit einer bestimmten „Kursnummer“ im Kursplan gelöscht wird, werden alle Datensätze für diesen Kurs in der Kursauswahlliste automatisch gelöscht. Dies dient zum Erstellen eines Löschauslösers Für den Kursplan implementieren Sie die Kaskadenlöschung der Studententabelle und der Kursauswahltabelle.
Erstellen Sie beim Einfügen eines Datensatzes in die Kursauswahltabelle, ob ein Student mit der Studentennummer in der Studententabelle vorhanden ist und ob ein Kurs mit der Kursnummer in der Kurstabelle vorhanden ist . Wenn ein Datensatz vorhanden ist, kann dieser eingefügt werden.
Sichern Sie die Datenbank „Student Course Selection System“ im Ordner BACKUPDB unter dem Laufwerk E der lokalen Festplatte.
sp_addumpdevice 'disk','Student Course Selection System_bak','E:BACKUPDB Student Course Selection System_bak'
BACKUP DATABASE Student Course Selection System TO DISK='Student Course Selection System_bak'
System zur Verwaltung der Buchausleihe
Anforderungsanalyse:
Das System sollte die folgenden Funktionen implementieren: Bibliothekare können Buchinformationen verwalten, einschließlich des Hinzufügens neuer Bücher, der Änderung von Buchinformationen und der Abwicklung der Buchausleihe Registrierung, Rückgaberegistrierung, Bearbeitung abgelaufener Bücher, Bearbeitung verlorener Bücher und Pflege der Leihscheininformationen der Leser usw. Leser können Bücher ausleihen, Bücher zurückgeben, Buchinformationen überprüfen, Buchinformationen ausleihen usw. Die spezifischen Anforderungen lauten wie folgt:
Buchinformationsverwaltung: Geben Sie alle Buchinformationen ein, pflegen Sie Buchinformationen usw.
Leserinformationsverwaltung: Pflegen Sie Leserinformationen und ändern, aktualisieren und löschen Sie Leser entsprechend den tatsächlichen Anforderungen.
Ausleihverwaltung: einschließlich Ausleihen von Büchern, Rückgabe von Büchern und Rückgabe überfälliger Bücher usw.
Es gibt zwei Haupttypen von Benutzern im Buchleihverwaltungssystem.
Administrator: Pflegen Sie grundlegende Buchdaten, einschließlich Buchtypen, aktualisieren Sie Buchinformationen und verarbeiten Sie die Ausleihe und Rückgabe von Büchern durch Leser.
Leserbenutzer: können Buchinformationen überprüfen und Bücher ausleihen.
Semantik: Die Buchsituation und die Verwaltungsvorschriften der Bibliothek. Für jede Buchart gibt es viele verschiedene Bücher, und jedes Buch kann mehrmals ausgeliehen werden Dieses Buch kann mehrfach ausgeliehen werden. Die Leihfrist für jedes Buch beträgt einen Monat.
Konzeptionelles Strukturdesign der Datenbank:
In 3 Schritten abgeschlossen: 1) Abstraktion der Entität 2) Abstraktion und Verbindung mit der Realität) Bestimmen der Attribute und Schlüssel der Entität
Buch Typ, einschließlich: Nummer der Buchkategorie, Name der Buchkategorie, Beschreibungsinformationen.
Bücher, einschließlich: Buchnummer, Buchtitel, Autor, Verlag, Preis.
Leser, einschließlich: Ausweisnummer, Name, Geschlecht, Abteilung, Klasse, Ausweisstatus (einschließlich gültig und ungültig), Kontaktinformationen usw.
Die Beziehung zwischen Lesern und Büchern ist m:n, die Beziehung zwischen Buchtypen und Büchern ist 1:n, und es gibt keine Verbindung zwischen Lesern und Buchtypen.
Logischer Strukturentwurf der Datenbank:
Konvertieren Sie das E-R-Diagramm in ein relationales Modell.
Optimieren Sie das relationale Modell
Normalisieren Sie es auf die dritte Normalform
Physikalisches Design und Implementierung der Datenbank:
Beinhaltet hauptsächlich die folgenden Arbeiten:
Datenbank erstellen
Basistabellen erstellen, Einschränkungen festlegen und Basistabellen verwalten.
Indizes erstellen und verwalten. (DBMS erstellt automatisch einen Index für den Primärschlüssel. Erstellen Sie einen Index, um die Abfrageeffizienz zu verbessern.)
Ansichten erstellen und verwalten.
Geben Sie Daten in die Datenbank ein.
Verwenden Sie SQL-Anweisungen zum Abfragen, Ändern, Löschen und für andere Vorgänge an Daten. (Sie können zuerst darüber nachdenken, wie Sie die Datenbank manipulieren und sie dann später implementieren.)
Schreiben Sie gespeicherte Prozeduren, Trigger usw. und bestehen Sie das Debugging.
Daten in der Datenbank bearbeiten
Um die Verwaltung der Administratorklassifizierung zu erleichtern, ist es jetzt erforderlich, Ansichten für Bücher mehrerer Buchtypen zu erstellen.
Erstellen Sie eine Tabelle mit dem Status der Leserausleihe.
Erstellen Sie einen kombinierten Subindex für die Dokumentnummer und das Ausleihdatum in der Ausleihtabelle.
Erstellen Sie Indizes für die Felder Buchklassifizierungsnummer, Buchtitel und Verlag in der Buchtabelle.
Erstellen Sie einen Einfügeauslöser für die Ausleihtabelle, um sicherzustellen, dass die in die Ausleihtabelle eingefügte „Zertifikatsnummer“ in der Lesertabelle vorhanden ist. Wenn sie nicht vorhanden ist, wird der Ausleihinformationsdatensatz nicht in die Ausleihtabelle eingefügt Tisch.
Erstellen Sie einen Update-Trigger in der Borrowing-Tabelle und überwachen Sie die Spalte „Borrowing Date“ der Borrowing-Tabelle, damit sie nicht manuell geändert werden kann.
Erstellen Sie einen Löschauslöser in der Lesertabelle, um eine Kaskadenlöschung der Lesertabelle und der Ausleihtabelle zu implementieren.
Sportspiel-Managementsystem
Anforderungsanalyse:
Einführung der Computerverwaltung von Sportspielen. Sportler können ihre eigenen Wettkampfereignisse und -ergebnisse, Schiedsrichter oder Mitarbeiter im Sportveranstaltungsmanagement überprüfen System Das System kann die Ergebnisse der Athleten in verschiedenen Wettkämpfen aufzeichnen und Leistungsstatistiken usw. erstellen. Das Sportveranstaltungsmanagementsystem speichert die Teilnahmedaten von Sportlern, Wettkampfveranstaltungen und verschiedenen Wettkampfarten.
Zu den Hauptverwaltungsobjekten des Sportveranstaltungsmanagementsystems gehören repräsentative Mannschaften, Sportler, Wettkampfveranstaltungen usw.
In diesem System lauten die Grundregeln wie folgt: Eine repräsentative Mannschaft besteht aus mehreren Athleten, und ein Athlet kann nur einer repräsentativen Mannschaft angehören; ein Athlet kann an mehreren Wettkämpfen teilnehmen Es wird davon ausgegangen, dass nach Abschluss jedes Wettkampfes die Rangliste von oben nach unten geordnet wird und die drei besten Athleten entsprechende Punkte erhalten. Beispielsweise werden die Punkte für den 1., 2. und 3. Platz vergeben Es werden jeweils 3, 2 und 1 Punkte vergeben. Die Punkte aller Mitglieder der repräsentativen Mannschaft werden kumuliert, um die Gesamtpunktzahl jeder repräsentativen Mannschaft zu ermitteln von hoch nach niedrig, um die Rangliste jedes repräsentativen Teams zu erhalten.
Um die Systemanforderungen zu vereinfachen, berücksichtigt dieses Sporttreffen-Managementsystem nur die Verwaltung von Leichtathletikspielen, berücksichtigt nur die Beziehung zwischen repräsentativen Mannschaften und Wettkampfveranstaltungen und berücksichtigt nicht die Anordnung der Schiedsrichterergebnisse. Wettkampfzeit, Ort usw.
Datenbankkonzeptstrukturdesign:
Repräsentatives Team: repräsentativer Spieler, Teamname, Teamleiter, Gesamtpunktzahl, Gesamtwertung
Athlet: Athletennummer, Name, Geschlecht, Alter
Wettbewerbsgegenstände: Projektnummer, Projektkategorie, Projektname, Leistungseinheit.
Entwurf einer logischen Datenbankstruktur:
4 Tabellen,
Wettbewerbsdetails, einschließlich Ergebnisse, Punkte, Ranglisten
Das Obige sind die allgemeinen Schritte zum Entwerfen einer Datenbank und Mit all den Beispielen glaube ich, dass Sie bereits eine allgemeine Vorstellung davon haben, wie man eine Datenbank entwirft.
Verwandte Tutorials:
So optimieren Sie die Datenbank
Ein Beispiel für eine gemeinsame Abfrage zur Datenbank
Das obige ist der detaillierte Inhalt vonAllgemeine Schritte und Beispiele zum Entwerfen einer Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!