OK, cela peut être une question stupide, mais ...SQL Server: clé primaire du schéma Guid mais parfois en grande partie Types entiers
J'ai hérité d'un projet et je suis chargé d'aller sur les relations de clé primaire.
Le projet utilise principalement Guids. Je dis «en grande partie» parce qu'il existe des exemples où les tables utilisent des types entiers pour refléter les énumérations. Par exemple, dbo.MessageFolder a MessageFolderId de type int pour refléter
public emum MessageFolderTypes
{
inbox = 1,
sent = 2,
trash = 3,
etc...
}
Cela se produit beaucoup. Il existe des tables avec des clés primaires de type int qui sont inévitables en raison de leur dépendance aux énumérations et des tables avec des clés primaires de type Guid qui reflètent le choix de la clé primaire sur la partie du programmeur précédent.
Est-ce que je devrais m'inquiéter que le schéma de PK soit taché comme ceci? Il ne se sent pas bien mais est-ce vraiment important? Si cela peut créer un problème, comment puis-je le contourner (je ne peux vraiment pas déplacer tous les PK pour taper int sans travail sérieux et je n'ai jamais entendu parler d'énumérations qui ont des valeurs guid)?
Merci.
+1 bien que ce lien ne soit pas vraiment pertinent - il compare le GUID aux GUID incrémentiels (?!?) ... –
@BlueRaja, désolé - Vous avez raison! Je l'avais BM'd comme j'ai récemment changé une table de NewID() à NewSequentialID() (Une chose d'héritage que je ne pouvais pas changer). Pour être juste il pourrait encore être utile à l'OP, il s'est certainement débarrassé de nos délais d'attente sur les gros inserts :) – Meff