Bonjour,
J'ai une base de données SQL Serveur 2019 dans laquelle je mets les logs de mon application.
Elle peut rapidement être volumineuse donc une "purge" est déjà envisagée à l'échelle du mois ou de l'année (pas encore tranché).

Toujours est-il que s'est posée la question de mettre une clé primaire (ce qui ne parait pas pertinent semble-t-il) mais ce qui parait pertinent est de mettre un index sur le champ d'horodatage du log.

1 - Me trompe-je pour la clé primaire ?
2 - Comment fonctionne les index sous SQL Server

Voici un extrait de la conversation eyu avec CinéPhil sur le chat :
11:06 [ypelissier]: Et pour des logs d'activité, doit-on mettre une clé primaire ? Il me semble que non pour ce cas là... Me trompe-je ?
11:32 [CinePhil]: La clé primaire n'est jamais obligatoire. Il faut se poser la question de l'utilité d'une clé primaire sur une table de log... Je suppose qu'il y aura une colonne horo-datée ?
11:32 [CinePhil]: Et que la recherche dans cette table se fera sur cet horo-datage ?
11:33 [ypelissier]: Oui mais je pense que l'horadatage ne sera pas primaire d'où l'absence de clé primaire
11:33 [ypelissier]: Oui, la recherche se fera avec un horodatage
11:34 [ypelissier]: En tout cas index sur la date
11:35 [CinePhil]: Après je ne sais pas comment fonctionnent les index sur SQL Server. Je suppose qu'il utilise un numéro interne de ligne ou un pointeur pour l'associer à la colonne d'index ? Auquel cas la clé primaire n'est peut-être pas utile sur cette table.
11:35 [CinePhil]: Peut-être y a t-il un renseignement là-dessus chez SQLPro. Ou lui demander son avis par message privé...
11:36 [CinePhil]: Parce qu'ici ça devient désert !
11:37 [ypelissier]: Alors là, pour moi aussi... Mais je vais demander à SQLPro, il passe par ici de temps en temps ? Ou plutôt directement en message privée sur le forum ? Ou mieux, sur le forum directement ?
11:42 [CinePhil]: Sur le forum ce serait mieux. Tout le monde en profite. Il ne passe ici que rarement.
Merci d'avance