Nous l'avons vu, créer une base de données est complexe. Du coup cela peut engendrer de nombreuses erreurs, notamment des doublons, et la qualité de notre base en pâtit. Pour éviter ce problème, il existe les contraintes d'intégrité. L'idée de base est de fournir des moyens qui permettent de restreindre les données valides d'une base de données. On ne veut pas entrer tout et n'importe quoi dans les tables.
La mise en oeuvre de cette notion se fait via des contraintes d'intégrité. Elles se définissent comme étant des déclarations logiques qui permettent de restreindre le domaine actif d'une base de données.
Voici deux exemples:
Vous l'apprendrez au fur et à mesure, mais il existe de nombreuses contraintes. On a l'habitude de dire que plus il y a de contraintes, plus la base est propre, moins l'administrateur ou le développeur l'est. En effet, multiplier les limitation de possibilités au sein d'une base de données ne facilite pas la vie des développeurs d'applications, qui ont tendance à vouloir mettre leurs contraintes directement dans le code. Cependant, il est essentiel de faire cela, ne serait-ce que pour la réutilisabilité des bases.
Dans les contraintes les plus fréquemment trouvées, on aura: