Integritätsbeschränkungen Integritätsbedingungen dienen der Richtigkeit der Tabellendaten! Sind die Daten fehlerhaft, können sie der Tabelle erst gar nicht hinzugefügt werden. 1 Primärschlüssel Wenn einer Spalte eine Primärschlüsseleinschränkung hinzugefügt wird, können die Daten in dieser Spalte nicht wiederholt werden. Auf diese Weise ist der Wert der Primärschlüsselspalte in jeder Datensatzzeile die eindeutige Kennung dieser Zeile. Beispielsweise kann die ID-Nummer eines Studenten als eindeutige Kennung verwendet werden, der Name des Studenten kann jedoch nicht als eindeutige Kennung verwendet werden, da mehrere Studenten denselben Namen haben können. Um eine Primärschlüsseleinschränkung anzugeben, verwenden Sie das Schlüsselwort PRIMARY KEY. Erstellen Sie eine Tabelle: Geben Sie beim Definieren der Spalten den Primärschlüssel an: CREATE TABLE stu( sid CHAR(6) PRIMÄRSCHLÜSSEL, sname VARCHAR(20), Alter INT, Geschlecht VARCHAR(10) ); Erstellen Sie eine Tabelle: Definieren Sie die Spalten und geben Sie anschließend den Primärschlüssel separat an: CREATE TABLE stu( sid CHAR(6), sname VARCHAR(20), Alter INT, Geschlecht VARCHAR(10), PRIMÄRSCHLÜSSEL(sid) ); Geben Sie beim Ändern einer Tabelle den Primärschlüssel an: ALTER TABLE stu Primärschlüssel hinzufügen (sid); So löschen Sie einen Primärschlüssel (löschen Sie einfach die Primärschlüsseleinschränkung, nicht die Primärschlüsselspalte): ALTER TABLE stu DROP PRIMARY KEY; 2. Automatische Inkrementierung des Primärschlüssels MySQL bietet die Funktion der automatischen Vergrößerung von Primärschlüsseln! Wenn der Primärschlüssel auf automatische Inkrementierung eingestellt ist und kein Primärschlüsselwert angegeben ist, wird der Primärschlüsselwert automatisch generiert. Er entspricht dem maximalen Primärschlüsselwert + 1, sodass keine Duplizierung von Primärschlüsseln möglich ist. Legen Sie beim Erstellen einer Tabelle den Primärschlüssel auf automatisches Wachstum fest (der Primärschlüssel muss eine Ganzzahl sein, um automatisch zu wachsen): CREATE TABLE stu( sid INT PRIMARY KEY AUTO_INCREMENT, sname VARCHAR(20), Alter INT, Geschlecht VARCHAR(10) ); Legen Sie die automatische Inkrementierung des Primärschlüssels beim Ändern der Tabelle fest: ALTER TABLE stu CHANGE sid sid INT AUTO_INCREMENT; Löschen Sie die automatische Inkrementierung des Primärschlüssels beim Ändern der Tabelle: ALTER TABLE stu CHANGE sid sid INT; 3 Nicht leer Die Spalte, die die Nicht-Leer-Beschränkung angibt, darf nicht ohne Wert sein. Das heißt, beim Einfügen eines Datensatzes muss der Spalte, der die Nicht-Leer-Beschränkung hinzugefügt wurde, ein Wert zugewiesen werden. Beim Ändern eines Datensatzes darf der Wert der Nicht-Leer-Spalte nicht auf NULL gesetzt werden. Geben Sie eine Nicht-Null-Einschränkung an: CREATE TABLE stu( sid INT PRIMARY KEY AUTO_INCREMENT, sname VARCHAR(10) NOT NULL, Alter INT, Geschlecht VARCHAR(10) ); Nachdem Sie das Sname-Feld als nicht leer angegeben haben, müssen Sie beim Einfügen von Datensätzen in die Stu-Tabelle einen Wert für das Sname-Feld angeben, andernfalls wird ein Fehler gemeldet: EINFÜGEN IN stu(sid) VALUES(1); Im eingefügten Datensatz ist kein Wert für sname angegeben, daher wird ein Fehler gemeldet! 4 Einzigartig Sie können auch eindeutige Einschränkungen für Felder angeben! Wenn für eine Spalte eine eindeutige Einschränkung angegeben ist, müssen die Werte in der Spalte eindeutig sein. Dies ist einem Primärschlüssel ähnlich! So geben Sie beispielsweise eine eindeutige Einschränkung für das Feld „sname“ der Tabelle „stu“ an: Tabelle erstellen tab_ab( sid INT PRIMARY KEY AUTO_INCREMENT, sname VARCHAR(10) UNIQUE ); INSERT INTO sname(sid, sname) VALUES(1001, 'zs'); INSERT INTO sname(sid, sname) VALUES(1002, 'zs'); Wenn Sie den gleichen Namen zweimal eingeben, beschwert sich MySQL! 5 Fremdschlüssel Primär- und Fremdschlüssel sind die einzige Möglichkeit Tabellen zu verknüpfen! Ein Fremdschlüssel ist der Primärschlüssel einer anderen Tabelle! Beispielsweise besteht eine Assoziationsbeziehung zwischen der Mitarbeitertabelle und der Abteilungstabelle, wobei das Abteilungsnummernfeld in der Mitarbeitertabelle ein Fremdschlüssel ist, der wiederum ein Fremdschlüssel relativ zur Abteilungstabelle ist. Beispielsweise zeigt in der Tabelle t_section der Datensatz mit der SID 1 an, dass es eine Kategorie namens „Java“ gibt und der Moderator der Benutzer mit der UID 1 in der Tabelle t_user ist, also zs! Beispielsweise ist in der Tabelle „t_topic“ der Datensatz mit der TID 2 ein Beitrag mit dem Namen „Java is coffee“, ein Beitrag im Abschnitt „Java“, dessen Autor ww ist. Der Fremdschlüssel wird verwendet, um den Wert dieser Spalte auf den Primärschlüsselwert einer anderen Tabelle zu beschränken. ! ! Erstellen Sie die Tabelle t_user und geben Sie uid als Primärschlüsselspalte an: TABELLE ERSTELLEN t_user( uid INT PRIMARY KEY AUTO_INCREMENT, uname VARCHAR(20) UNIQUE NICHT NULL ); Erstellen Sie die Tabelle t_section, geben Sie sid als Primärschlüsselspalte und u_id als Fremdschlüssel für die Spalte uid der Tabelle t_user an: TABELLE ERSTELLEN t_Abschnitt( sid INT PRIMARY KEY AUTO_INCREMENT, sname VARCHAR(30), u_id INT, EINSCHRÄNKUNG fk_t_user FREMDER SCHLÜSSEL(u_id) REFERENZEN t_user(uid) ); Ändern Sie die Tabelle „t_section“ und geben Sie „u_id“ als Fremdschlüssel für die Spalte „uid“ der Tabelle „t_user“ an: ALTER TABLE t_Abschnitt EINSCHRÄNKUNG HINZUFÜGEN fk_t_user Fremdschlüssel (u_id) REFERENZEN t_user(uid); Ändern Sie die Tabelle t_section und löschen Sie die Fremdschlüsseleinschränkung von u_id: ALTER TABLE t_Abschnitt DROP FOREIGN KEY fk_t_user; 6 Beziehungen zwischen Tabellen
Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Linux Überprüfen Sie den Installationsort der Software einfache Methode
1. Zunächst muss die reine HTML-Datei einen Eintr...
Inhaltsverzeichnis 1. Datentyp 1.1 Warum brauchen...
In diesem Artikel wird hauptsächlich das Beispiel...
Vorwort Aufgrund der schwachen Typisierung von JS...
Nachdem Sie den folgenden Artikel gelesen haben, ...
Nur 15 Zeilen CSS und Ihr iPhone stürzt ab Der Si...
Inhaltsverzeichnis 01 Einführung in InnoDB Replic...
Das Konzept des Schlosses ①. Im wirklichen Leben ...
Inhaltsverzeichnis Migrationstools Anwendungstran...
HTML-Onfocus-Ereignisattribute Definition und Ver...
Ich habe kürzlich den Quellcode von Vue studiert ...
In diesem Artikel wird der spezifische Implementi...
Wenn wir ein Layout bearbeiten, verwenden wir nor...
Redis verwendet das Apline-Image (Alps) von Redis...
In diesem Artikel wird eine detaillierte Erläuter...