Einführung in SQL Server-Einschränkungen

Einschränkungen sind Regeln und Vorschriften, die für eine Spalte oder eine Tabelle gelten, aus der keine unerwünschten Daten in die Tabelle eingefügt werden können. Wir können die Datentypbeschränkung angeben, die mithilfe von Einschränkungen in einer bestimmten Spalte in einer Tabelle gespeichert werden kann. Jetzt werden wir die SQL Server-Einschränkungen im Detail sehen.

Wie spezifiziere ich Constraints?

Mit der create table-Anweisung können Einschränkungen zum Zeitpunkt der Tabellenentwicklung definiert werden. Nach dem Erstellen einer Tabelle können wir die Einschränkungen auch mit der Anweisung ALTER TABLE angeben.

Syntax

Erstellen Sie eine Tabelle mit dieser Syntax

Create TABLE Information_ table
(
Column1 data_type(Size) Constraints_name,
Column2 data_type(Size) Constraints_name,
Column3 data_type(Size) Constraints_name,
);

  • Informationstabelle: Name der Tabelle, die erstellt werden soll.
  • Datentyp: Datentyp, der in dem Feld gespeichert werden kann.
  • Constraints_Name: Dies steht für den Namen der Constraints. Daher ist das Beispiel NICHT NULL, EINZIGARTIG, PRIMÄR usw.

Einschränkungen in SQL

Einige Einschränkungen in SQL lauten wie folgt:

1. NICHT NULL

Diese NOT NULL-Einschränkungen besagen, dass wir den Nullwert nicht in der Spalte speichern können. Dies bedeutet, dass wir in dieser bestimmten Spalte keine Null mehr speichern können, wenn eine Spalte als NOT NULL angegeben ist. Sie dürfen keine neue Zeile in die Tabelle einfügen, ohne in diesem Feld einen Wert anzugeben.

Beispiel

Wir erstellen ein Tabellennamen-College mit der Feld-ID name und Email als NOT NULL. Ohne Angabe eines Werts in diesem Feld können Sie daher keine neue Zeile in die Tabelle einfügen.

Syntax

Create Table College
(
ID name (10) NOT NULL,
Email (15) NOT NULL,
ADDRESS varchar(50)
);

2. EINZIGARTIG

Diese EINZIGARTIGE Einschränkung hilft, jede Zeile in der Tabelle eindeutig zu identifizieren. Zum Beispiel Singular column, Alle Zeilen müssen einen anderen Wert haben. In einer Tabelle können wir mehr als eine UNIQUE-Spalte haben. SQL verwendet eine spezielle Einschränkung, um zu überprüfen, ob die Unterabfrage im Ergebnis doppelte Tupel enthält.

Punkte, die man sich merken sollte

  1. Wertet eine leere Unterabfrage mit true aus.
  2. Gibt true zurück, wenn die Unterabfrage zwei Doppelzeilen mit mindestens einem Attribut als NULL enthält.

Syntax

Create Table College
(
ID int (6 ) NOT NULL UNIQUE,
NAME varchar(15),
ADDRESS Varchar(50),
);

3. PRIMARY KEY

Der Primärschlüssel wird verwendet, um die eindeutigen Zeilen aus der Tabelle zu identifizieren. Wenn die Tabelle den Hauptschlüssel als Feld enthält, darf dieses Feld keine Nullwerte enthalten. Da der Primärschlüssel jede Zeile eindeutig identifiziert, sollten alle Zeilen eindeutige Werte enthalten. Wir können also mit anderen Worten sagen, dass dies eine Kombination aus NOT NULL- und UNIQUE-Einschränkungen ist. Im Folgenden wird eine Tabelle mit dem Namen Student erstellt und die Feld-ID als Primärschlüssel angegeben

Syntax

Create Table College
(
ID INT(8) NOT NULL UNIQUE,
Address varchar(50),
Email Varchar(20),
Primary Key (ID)
);

4. AUSLÄNDISCHER SCHLÜSSEL

Ein Fremdschlüssel (FK) ist eine Spalte oder Spaltenkombination, die in zwei Tabellen zum Einrichten und Erzwingen einer Datenbeziehung verwendet wird. Hier ist ein Beispieldiagramm, das die Beziehung zwischen Mitarbeiter und Abteilung zeigt. Wenn Sie es sich genau ansehen, werden Sie feststellen, dass die Spalte dept_id INT der Mitarbeitertabelle mit der Primärschlüsselspalte der Tabelle der Abteilungen übereinstimmt. Daher ist die Abteilungs-ID-Spalte der Mitarbeitertabelle der Fremdschlüssel für die Abteilungstabelle.

Wenn Sie in MySQL eine unten gezeigte Tabelle erstellen, können Sie einen Fremdschlüssel erstellen, indem Sie eine FOREIGN KEY-Einschränkung festlegen. Die folgende Anweisung legt einen Fremdschlüssel in der Spalte College der Mitarbeitertabelle fest, der sich auf die Spalte College-ID der Abteilungstabelle bezieht.

Syntax

Create table College (
Emp_id Int NOT NULL PRIMARY KEY,
emp _Name VArchar(20) NOT NULL,
hire_DATE NOT NULL,
salary INT,
Dept_ID INT,
Foreign Key (Dept_id)References Departments (dept_Id)
);

5. EINSCHRÄNKUNGEN PRÜFEN

Mit dem Grenzwert CHECK können wir eine Feldbedingung festlegen, die bei der Eingabe von Werten für dieses Feld erfüllt sein soll. Die folgende Abfrage erstellt beispielsweise eine Student-Tabelle und gibt die AGE-Feldbedingung als (AGE> = 18) an. Mit anderen Worten, der Benutzer darf keine Datensätze in die AGE <18-Tabellen eingeben.

Syntax

Create table dogs(
ID INT NOT NULL,
Name VARCHAR (25) NOT NULL,
Breed Name Varchar (30) NOT NULL,
AGE OF BREED INT,
GENDER VARCHAR(9),
PRIMARY KEY (ID),
Check (Gender in ('male', 'female', 'UNKNOW'))
);

ANMERKUNG: Die Prüfbedingung im obigen SQL-Befehl beschränkt die Zugehörigkeit des GENDER nur zu den angegebenen Kategorien. Wenn ein neues Tupel hinzugefügt oder ein vorhandenes Tupel in der Bindung mit einem GENDER aktualisiert wird, der keiner der drei genannten Kategorien angehört, wird die entsprechende Aktualisierung der Datenbank abgebrochen.

Fazit

Aus diesem Grund haben wir in diesem Constraint-SQL-Lernprogramm die verschiedenen Einschränkungen in SQL kennengelernt. Zuerst sahen wir eine kurze Einführung in die SQL-Einschränkung. Dann wechseln wir zu SQL-Einschränkungstypen. Wir haben auch über SQL-Fremdschlüssel und SQL-Primärschlüssel gesprochen. Wir haben auch SQL Server Drop Constraint und Integrity Constraint in SQL Server gelernt.

Empfohlene Artikel

Dies war ein Leitfaden für SQL Server-Einschränkungen. Hier haben wir besprochen, wie man die Bedingungen, Arten von Bedingungen mit ihrer spezifischen Definition und Beispiele spezifiziert. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Einführung in T-SQL-Zeichenfolgenfunktionen
  2. Was ist SQL Injection?
  3. Was ist SSRS? | Berichte | Tutorials
  4. Was ist Prozedur in SQL?
  5. Arten von Joins in SQL Server
  6. Verschiedene Operationen in Bezug auf Tupel
  7. Top 6 Arten von Joins in MySQL mit Beispielen