Esistono istanze di basi di dati che, pur se sintatticamente corrette, non rappresentano informazioni possibili per l’applicazione di interesse
Proprietà che deve essere soddisfatta dalle istanze che rappresentano informazioni corrette per l’applicazione
Un vincolo è una funzione booleana (un predicato): associa ad ogni istanza il valore vero o falso
Non tutte le proprietà di interesse sono rappresentabili per mezzo di vincoli formulabili in modo esplicito
Esprimono condizioni sui valori di ciascuna ennupla, in modo indipendente dalle altre ennuple
Caso particolare: vincoli di dominio che coinvolgono un solo attributo
Una possibile sintassi: espressione booleana di atomi che confrontano valori di attributo o espressioni aritmetiche su di essi