Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Les règles sont obsolètes, qu'est-ce qui est à la place (TSQL) ?

Eh bien, l'une des raisons pour lesquelles les règles sont probablement mises de côté est que je pense qu'avec des règles, vous ne pouvez en avoir qu'une par colonne et qu'elles ne vérifient que les données entrant dans la base de données, c'est-à-dire qu'elles ne vérifient pas les données existantes déjà dans la base de données. Avec les contraintes de vérification, vous pouvez avoir plusieurs contraintes sur une colonne donnée et elles s'appliquent à toutes les données (données entrantes et données déjà dans la base de données). Étant donné que les règles semblent être une mauvaise solution à ce que sont les contraintes de vérification, Microsoft a probablement finalement réalisé qu'il était temps de s'en débarrasser, en plus elles ne sont pas standard SQL.

Si une contrainte de vérification ne suffit pas, vous pouvez également envisager d'utiliser un déclencheur pour une logique plus élaborée.