Esercitazione SQL

SQL HOME Introduzione SQL Sintassi SQL Seleziona SQL SQL Seleziona distinto SQL dove SQL e, o, no Ordina SQL per Inserisci SQL in Valori nulli SQL Aggiornamento SQL Elimina SQL SQL Seleziona in alto SQL Min e Max Conteggio SQL, media, somma Mi piace SQL Caratteri jolly SQL SQL In SQL tra Alias ​​SQL Join SQL Join interno SQL Join sinistro SQL SQL Right Join SQL Full Join SQL Self Join Unione SQL Raggruppamento SQL per SQL Avere SQL esiste SQL Qualsiasi, Tutti SQL Seleziona in Inserisci SQL in Seleziona Caso SQL Funzioni SQL Null Stored procedure SQL Commenti SQL Operatori SQL

Database SQL

SQL Crea DB SQL Drop DB DB di backup SQL SQL Crea tabella Tabella di rilascio SQL SQL Alter tabella Vincoli SQL SQL non nullo SQL unico Chiave primaria SQL Chiave esterna SQL Controllo SQL SQL predefinito Indice SQL Incremento automatico SQL Date SQL Viste SQL SQL Injection Hosting SQL Tipi di dati SQL

Riferimenti SQL

Parole chiave SQL Funzioni MySQL Funzioni di SQL Server Funzioni di accesso MS Riferimento rapido SQL

Esempi SQL

Esempi SQL Quiz SQL Esercizi SQL Certificato SQL

Vincolo UNICO SQL


Vincolo UNICO SQL

Il UNIQUEvincolo garantisce che tutti i valori in una colonna siano diversi.

Entrambi i vincoli UNIQUEe PRIMARY KEYforniscono una garanzia di unicità per una colonna o un insieme di colonne.

Un PRIMARY KEYvincolo ha automaticamente un UNIQUEvincolo.

Tuttavia, puoi avere molti UNIQUEvincoli per tabella, ma solo un PRIMARY KEYvincolo per tabella.


Vincolo SQL UNIQUE su CREATE TABLE

Il seguente SQL crea un UNIQUEvincolo sulla colonna "ID" quando viene creata la tabella "Persone":

SQL Server/Oracle/Accesso MS:

CREATE TABLE Persons (
    ID int NOT NULL UNIQUE,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

MySQL:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    UNIQUE (ID)
);

Per denominare un UNIQUEvincolo e per definire un UNIQUEvincolo su più colonne, utilizzare la seguente sintassi SQL:

MySQL/SQL Server/Oracle/MS Access:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT UC_Person UNIQUE (ID,LastName)
);


Vincolo SQL UNIQUE su ALTER TABLE

Per creare un UNIQUEvincolo sulla colonna "ID" quando la tabella è già stata creata, utilizzare il seguente SQL:

MySQL/SQL Server/Oracle/MS Access:

ALTER TABLE Persons
ADD UNIQUE (ID);

Per denominare un UNIQUEvincolo e per definire un UNIQUEvincolo su più colonne, utilizzare la seguente sintassi SQL:

MySQL/SQL Server/Oracle/MS Access:

ALTER TABLE Persons
ADD CONSTRAINT UC_Person UNIQUE (ID,LastName);

RILASCIA un vincolo UNICO

Per eliminare un UNIQUEvincolo, utilizzare il seguente SQL:

MySQL:

ALTER TABLE Persons
DROP INDEX UC_Person;

SQL Server/Oracle/Accesso MS:

ALTER TABLE Persons
DROP CONSTRAINT UC_Person;