Neueste Web-Entwicklung Tutorials
 

SQL Einzigartige Beschränkung


SQL UNIQUE Constraint

Die UNIQUE-Einschränkung eindeutig identifiziert jeden Datensatz in einer Datenbanktabelle.

Die einzigartige und Primärschlüssel-Bedingungen sowohl eine Garantie für die Einzigartigkeit für eine Spalte oder eine Gruppe von Spalten.

Ein PRIMARY KEY-Einschränkung hat automatisch eine eindeutige Einschränkung für sie definiert.

Beachten Sie, dass Sie viele UNIQUE-Einschränkungen pro Tisch haben, aber nur einen Primärschlüssel pro Tabelle definiert.


SQL UNIQUE Constraint auf CREATE TABLE

Die folgende SQL erstellt eine eindeutige Einschränkung für die "P_Id" Spalte , wenn die "Persons" Tabelle erstellt wird:

SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL UNIQUE,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

MySQL:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (P_Id)
)

Zur Benennung einer UNIQUE-Einschränkung zu erlauben und für eine UNIQUE-Einschränkung auf mehrere Spalten definieren, verwenden Sie die folgende SQL-Syntax:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)
)

SQL UNIQUE Constraint auf ALTER TABLE

Um eine eindeutige Einschränkung für die schaffen "P_Id" Spalte , wenn die Tabelle bereits erstellt wird, verwenden Sie die folgende SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD UNIQUE (P_Id)

Zur Benennung einer UNIQUE-Einschränkung zu erlauben und für eine UNIQUE-Einschränkung auf mehrere Spalten definieren, verwenden Sie die folgende SQL-Syntax:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)

Um DROP UNIQUE Constraint

Um eine UNIQUE-Einschränkung zu löschen, verwenden Sie die folgende SQL:

MySQL:

ALTER TABLE Persons
DROP INDEX uc_PersonID

SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT uc_PersonID