SQL-Einschränkungen sind wesentliche Elemente in relationales Datenbankdesign die dafür sorgen, dass Integrität Genauigkeit Und Zuverlässigkeit der in einer Datenbank gespeicherten Daten. Durch die Durchsetzung spezifischer Regeln für Tabellenspalten tragen SQL-Einschränkungen dazu bei, die Datenkonsistenz aufrechtzuerhalten, ungültige Dateneinträge zu verhindern und die Abfrageleistung zu optimieren.
In diesem Artikel erklären wir die gängigsten SQL-Einschränkungen im Detail anhand anschaulicher Beispiele und erläutern, wie man sie effektiv umsetzt.
Was sind SQL-Einschränkungen?
SQL-Einschränkungen sind Regeln, auf die angewendet wird Spalten oder Tische in einem relationale Datenbank um die Art der möglichen Daten einzuschränken eingefügt aktualisiert oder gelöscht . Diese Regeln stellen sicher, dass die Daten gültig und konsistent sind und der Geschäftslogik entsprechen Datenbankanforderungen . Einschränkungen können während der Tabellenerstellung oder später mithilfe von erzwungen werden ALTER TABLE Stellungnahme. Sie spielen eine entscheidende Rolle bei der Aufrechterhaltung der Qualität und Integrität Ihrer Datenbank.
Arten von SQL-Einschränkungen
SQL bietet verschiedene Arten von Einschränkungen, um verschiedene Aspekte der Datenintegrität zu verwalten. Diese Einschränkungen sind wichtig, um sicherzustellen, dass die Daten den Anforderungen von entsprechen Genauigkeit Konsistenz Und Gültigkeit . Lassen Sie uns jeden von ihnen mit detaillierten Erklärungen und Beispielen durchgehen.
1. NOT NULL-Einschränkung
Der NICHT NULL Die Einschränkung stellt sicher, dass eine Spalte keine NULL-Werte enthalten kann. Dies ist besonders wichtig für Spalten, in denen ein Wert für die Identifizierung von Datensätzen oder die Durchführung von Berechnungen unerlässlich ist. Wenn eine Spalte definiert ist als NICHT NULL Jede Zeile muss einen Wert für diese Spalte enthalten.
Beispiel:
if und else in Bash
CREATE TABLE Student
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
ADDRESS varchar(20)
);
Erläuterung: Im obigen Beispiel beideIDUndNAMESpalten werden mit definiert NICHT NULL Einschränkung bedeutet, dass jeder Schüler eine haben mussIDUndNAMEWert.
2. EINZIGARTIGE Einschränkung
Der EINZIGARTIG Die Einschränkung stellt sicher, dass alle Werte in einer Spalte in allen Zeilen einer Tabelle unterschiedlich sind. Anders als die PRIMÄRSCHLÜSSEL die Eindeutigkeit erfordert und keine NULL-Werte zulässt. Die UNIQUE-Einschränkung lässt NULL-Werte zu, erzwingt aber dennoch die Eindeutigkeit für Nicht-NULL-Einträge.
Beispiel:
CREATE TABLE Student
(
ID int(6) NOT NULL UNIQUE
NAME varchar(10)
ADDRESS varchar(20)
);
Erläuterung : Hier dieIDDie Spalte muss eindeutige Werte haben, um sicherzustellen, dass keine zwei Schüler dieselben Werte verwenden könnenID. Wir können mehr als eine haben EINZIGARTIG Einschränkung in einer Tabelle.
3. PRIMARY KEY-Einschränkung
A PRIMÄRSCHLÜSSEL Einschränkung ist eine Kombination aus NICHT NULL Und EINZIGARTIG Einschränkungen. Es identifiziert jede Zeile in einer Tabelle eindeutig. Eine Tabelle kann nur eine haben PRIMÄRSCHLÜSSEL und es kann keine NULL-Werte akzeptieren. Dies wird normalerweise für die Spalte verwendet, die als Kennung von Datensätzen dient.
Beispiel:
CREATE TABLE Student
(
ID int(6) NOT NULL UNIQUE
NAME varchar(10)
ADDRESS varchar(20)
PRIMARY KEY(ID)
);
Erläuterung: In diesem Fall dieIDDie Spalte wird als Primärschlüssel festgelegt, um sicherzustellen, dass die ID jedes Schülers eindeutig ist und nicht NULL sein darf.
4. Fremdschlüssel-Einschränkung
A AUSLÄNDISCHER SCHLÜSSEL Die Einschränkung verknüpft eine Spalte in einer Tabelle mit der Primärschlüssel in einer anderen Tabelle. Diese Beziehung trägt zur Aufrechterhaltung bei referenzielle Integrität indem sichergestellt wird, dass der Wert in der Fremdschlüssel Die Spalte entspricht einem gültigen Datensatz in der referenzierten Tabelle.
Bestelltabelle:
| O_ID | ORDER_NO | C_ID |
|---|---|---|
| 1 | 2253 | 3 |
| 2 | 3325 | 3 |
| 3 | 4521 | 2 |
| 4 | 8532 | 1 |
Kundentisch:
| C_ID | NAME | ADRESSE |
|---|---|---|
| 1 | RAMESH | DELHI |
| 2 | SICHER | NOIDA |
| 3 | Dharmesh | GURGAON |
Wie wir deutlich sehen können, ist das Feld C_ID In Bestelltabelle ist das Primärschlüssel in der Kundentabelle, d. h. es identifiziert jede Zeile in der eindeutig Kunden Tisch. Daher handelt es sich um einen Fremdschlüssel in der Orders-Tabelle.
Beispiel:
Konvertierung von int in string in Java
CREATE TABLE Orders
(
O_ID int NOT NULL
ORDER_NO int NOT NULL
C_ID int
PRIMARY KEY (O_ID)
FOREIGN KEY (C_ID) REFERENCES Customers(C_ID)
)
Erläuterung: In diesem Beispiel dieC_IDSpalte in derOrdersTabelle ist ein Fremdschlüssel, der auf die verweistC_IDSpalte in derCustomersTisch. Dadurch wird sichergestellt, dass nur gültige Kunden-IDs in das eingegeben werden könnenOrdersTisch.
5. CHECK-Einschränkung
Der ÜBERPRÜFEN Mit der Einschränkung können wir eine Bedingung angeben, die Daten erfüllen müssen, bevor sie in die Tabelle eingefügt werden. Dies kann verwendet werden, um Regeln durchzusetzen, z. B. um sicherzustellen, dass der Wert einer Spalte bestimmte Kriterien erfüllt (z. B. muss das Alter größer als 18 sein).
Beispiel:
CREATE TABLE Student
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
AGE int NOT NULL CHECK (AGE >= 18)
);
Erläuterung: In der obigen Tabelle die ÜBERPRÜFEN Durch die Einschränkung wird sichergestellt, dass nur Schüler ab 18 Jahren in die Tabelle aufgenommen werden können.
String in Java in int konvertieren
6. DEFAULT-Einschränkung
Der STANDARD Die Einschränkung stellt einen Standardwert für eine Spalte bereit, wenn beim Einfügen kein Wert angegeben wird. Dies ist nützlich, um sicherzustellen, dass bestimmte Spalten immer einen aussagekräftigen Wert haben, auch wenn der Benutzer keinen angibt
Beispiel:
CREATE TABLE Student
(
ID int(6) NOT NULL
NAME varchar(10) NOT NULL
AGE int DEFAULT 18
);
Erläuterung: Hier wird kein Wert angegebenAGEBeim Einfügen wird automatisch der Standardwert 18 zugewiesen.
So geben Sie Einschränkungen in SQL an
Einschränkungen können während des Tabellenerstellungsprozesses mithilfe von angegeben werden CREATE TABLE Stellungnahme. Darüber hinaus können Einschränkungen mithilfe von geändert oder zu vorhandenen Tabellen hinzugefügt werdenALTER TABLEStellungnahme.
Syntax zum Erstellen von Einschränkungen:
CREATE TABLE Tabellenname
Binäre Suche(
Spalte1 Datentyp [Einschränkungsname]
Spalte2 Datentyp [Einschränkungsname]
Spalte3 Datentyp [Einschränkungsname]
...
);
Wir können Einschränkungen auch hinzufügen oder entfernen, nachdem eine Tabelle erstellt wurde:
Beispiel zum Hinzufügen einer Einschränkung:
ALTER TABLE Student
ADD CONSTRAINT unique_student_id UNIQUE (ID);
Abschluss
SQL-Einschränkungen sind für die Wartung unerlässlich Datenintegrität und Sicherstellung der Konsistenz in relationalen Datenbanken. Das Verständnis und die effektive Umsetzung dieser Einschränkungen werden beim Entwurf robuster, fehlerfreier Datenbanken hilfreich sein. Durch Hebelwirkung NICHT NULL EINZIGARTIGER PRIMÄRSCHLÜSSEL AUSLÄNDISCHER SCHLÜSSEL STANDARD UND INDEX PRÜFEN Sie können sicherstellen, dass Ihre Datenbank optimiert ist Genauigkeit Und Leistung .
Quiz erstellen