Die Datenintegrität wird in Entitätsintegrität, Domänenintegrität und referenzielle Integrität unterteilt. Referenzielle Integrität: Referenzielle Integrität bezieht sich auf den Entwurf zwischen mehreren Tabellen, hauptsächlich unter Verwendung von Fremdschlüsseleinschränkungen. 1. Entitäts- (Zeilen-) Integrität Die Entitätsintegrität wird durch den Primärschlüssel der Tabelle erreicht. Logischer Primärschlüssel: wie z. B. ID, stellt keine tatsächliche geschäftliche Bedeutung dar, sondern wird nur zur eindeutigen Identifizierung eines Datensatzes verwendet (empfohlen) Zum Beispiel: Tabelle erstellen person2( ID int Primärschlüssel auto_increment, Name varchar(100) ); 2. Domänen- (Spalten-) Integrität Nicht null-Einschränkung: nicht null Tabelle erstellen person3( id int nicht null eindeutig, Name varchar(20) nicht null eindeutig, Geschlecht varchar(20) nicht null, phone char(11) unique #Nicht erlaubt, ); Drei: Referenzielle Integrität 1. Eins-zu-viele Syntaxeingabe zum Erstellen von Eins-zu-vielen: Tabelle Kunden erstellen( Ich würde int, Name varchar(20), Adresse varchar(100), Primärschlüssel (ID) ); Erstellen Sie die Tabelle „Bestellungen“: Tischbestellungen erstellen( Ich würde int, order_num int Primärschlüssel, Preis Float (4,2), Kunden-ID int, Einschränkung customer_ord_fk Fremdschlüssel (customer_id) verweist auf Kunden (id) ); Hinweis: Einschränkung: Einschränkung, Fremdschlüssel: Fremdschlüssel, Referenzen: Referenzen Erstellen Sie eine Fremdschlüsseleinschränkung mit dem Namen customer_ord_fk. Der Fremdschlüssel bezieht sich auf customer_id, die wiederum auf die ID-Spalte in der Kundentabelle verweist. Tabellenoperation erzeugt Eins-zu-Viele Kundentabelle Auftragstabelle Bestellungen Fremdschlüsseleinstellungen Erstellen Sie eine Fremdschlüsseleinschränkung mit dem Namen „customer_ord_fk“ mit dem Fremdschlüsselfeld „customer_id“, das auf die Spalte „ID“ in der Tabelle „Customers“ verweist. Erweiterung: Vier Strategien zum Löschen und Aktualisieren von Untertabellen:
2. Viele-zu-viele Erstellen Sie die Lehrertabelle: Tabelle „Lehrer“ erstellen ( ID int Primärschlüssel auto_increment, Name varchar(20) , Geschlecht char(5), Betreff varchar(20) ); Erstellen Sie die Studententabelle: Tabelle „Studenten“ erstellen ( id int Primärschlüssel, Name varchar(20), Alter int ); Die dritte ist die Assoziationstabelle: Tabelle Lehrer_Schüler erstellen( Ich würde int, t_id int, s_id int, Primärschlüssel (t_id, s_id) Einschränkung teacher_id_fk Fremdschlüssel(t_id) verweist auf students(id), beschränkt student_id_fk Fremdschlüssel (s_id) Referenzen Lehrer(id) ); Tabellenoperation Viele-zu-Viele Erstellen Sie die Lehrertabelle: Erstellen Sie die Studententabelle: Die dritte Tabelle: 3. Eins-zu-eins (1) Im Allgemeinen müssen Sie nur eine Tabelle entwerfen. (2) Sie können zwei Tabellen entwerfen. Methode 1: Erstellen Sie in der zweiten Tabelle ein Feld als Fremdschlüssel (auf eindeutig gesetzt), das dem Primärschlüssel in der ersten Tabelle entspricht. Zwei Tabellen: Einzigartigkeit ist sehr wichtig Tabelle Benutzer erstellen( ID int Primärschlüssel auto_increment, Name varchar(20), Alter int ); Tischkarte erstellen( ID int Primärschlüssel auto_increment, num varchar(20) ungleich null, Adresse varchar(100) nicht null, Benutzer-ID int eindeutig, Einschränkung user_card_fk Fremdschlüssel (Benutzer-ID) verweist auf Benutzer(-ID) ); Oben finden Sie die ausführliche Erklärung und Integration der MySQL-Datenintegrität, die vom Herausgeber eingeführt wurde. Ich hoffe, dass sie für alle hilfreich sein wird. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
<<: Erfahren Sie, wie Sie mit Webpack TypeScript-Code verpacken und kompilieren
>>: Führen Sie die Schritte zum Einrichten automatischer Updates in CentOS 8 aus
Inhaltsverzeichnis Objekt.prototype.valueOf() Obj...
Tomcat ist ein HTTP-Server, der die offizielle Re...
Ich weiß nicht, ob es daran liegt, dass die Binär...
Implementierungsvorbereitung # Der Dateipfad muss...
Voraussetzung: Das Webentwickler-Plugin wurde inst...
Die endgültige Lösung ist im letzten Bild Wenn Si...
Schwachstellen bei der Entwicklung Während des En...
In MySQL gibt es folgende Protokolldateien: 1: Pr...
Code kopieren Der Code lautet wie folgt: <!DOC...
1. Lösung für das Problem, dass die Seite leer is...
Legen Sie den Stil der Tabelle fest: „table-layout...
HTML zum Erreichen eines einfachen ListViews-Effe...
Timer-Effekte: <div> <font id='timeC...
Inhaltsverzeichnis 1. Einführung in den Implement...
1. Laden Sie MySQL von der offiziellen Website he...