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

Une clé primaire est-elle nécessaire dans SQL Server ?

Nécessaire? Non. Utilisé dans les coulisses ? Eh bien, il est enregistré sur le disque et conservé dans le cache de lignes, etc. La suppression augmentera légèrement vos performances (utilisez une montre avec une précision à la milliseconde pour le remarquer).

Mais ... la prochaine fois que quelqu'un aura besoin de créer des références à cette table, il vous maudira. S'ils sont courageux, ils ajouteront un PK (et attendront longtemps que la BD crée la colonne). S'ils ne sont pas courageux ou stupides, ils commenceront à créer des références à l'aide de la clé métier (c'est-à-dire les colonnes de données), ce qui provoquera un cauchemar de maintenance.

Conclusion :Étant donné que le coût d'avoir un PK (même s'il n'est pas utilisé au guichet automatique) est si faible, laissez-le faire.