J'ai un CMS qui a deux méthodes pour interroger le contenu. Un qui interroge par ID et un autre interroge par le nom du contenu.Dois-je rechercher du contenu dans la base de données par identifiant ou nom?
ContentManager.Select(12);
ou
ContentManager.Select("Content Name");
La façon dont je vois la première serait plus rapide, car l'ID est un index et ne comporte pas la comparaison de chaînes. Alors que le second est beaucoup plus facile à travailler.
J'ai travaillé, pour des raisons de maintenance, avec le second. Mais si je change le nom du contenu, le Select ne va évidemment plus fonctionner. Mais l'Id est censé être seulement au niveau de la base de données, et non visible à partir des formulaires CMS. Editer: De plus, si un contenu devait être supprimé et réinséré, la sélection de chaîne fonctionnerait et la sélection d'id ne le ferait pas.
Je ne peux pas arriver à un point commun entre ces deux approches.
Vous remarquez des problèmes de vitesse? Avez-vous fait des tests de charge pour voir si le CMS répond assez rapidement en utilisant les noms sous la charge prévue? Vous devriez pouvoir ajouter un index à la colonne de nom de contenu, bien que ce ne soit pas aussi rapide que la clé primaire. –