Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Quali sono i vincoli del database?

I vincoli fanno parte della definizione di uno schema di database.

Un vincolo è solitamente associato a una tabella e viene creato con un CREATE CONSTRAINT o CREATE ASSERTION Istruzione SQL.

Definiscono determinate proprietà che i dati in un database devono rispettare. Possono essere applicati a una colonna, un'intera tabella, più di una tabella o un intero schema. Un sistema di database affidabile garantisce che i vincoli siano sempre validi (tranne eventualmente all'interno di una transazione, per i cosiddetti vincoli differiti).

I tipi comuni di vincoli sono:

  • non nullo - ogni valore in una colonna non deve essere NULL
  • unico - i valori nelle colonne specificate devono essere univoci per ogni riga di una tabella
  • chiave primaria - i valori nelle colonne specificate devono essere univoci per ogni riga in una tabella e non essere NULL; normalmente ogni tabella in un database dovrebbe avere una chiave primaria:viene utilizzata per identificare i singoli record
  • chiave straniera - i valori nelle colonne specificate devono fare riferimento a un record esistente in un'altra tabella (tramite la sua chiave primaria o qualche altro vincolo unico )
  • controlla - viene specificata un'espressione, che deve restituire true per soddisfare il vincolo