Une clé primaire est uniquement une valeur que nous avons déterminée comme étant la valeur la plus importante dans un enregistrement. Que cette clé soit un entier signé, un entier non signé, une chaîne, un blob (en fait, il y a des limites) ou un UUID (ou quel que soit le nom qu'il porte aujourd'hui), le fait est toujours que c'est une clé, et qu'elle est la chose de la plus haute importance.
Comme nous ne sommes pas contraints d'utiliser uniquement des nombres orientés positifs pour nos clés, il est logique de considérer qu'un entier signé n'atteindra que ~ 2 milliards, tandis qu'un entier non signé ira à ~ 4 milliards. Mais il n'y a rien de mal à utiliser un entier signé, en définissant la valeur initiale à ~ -2 milliards et en définissant un incrément de un. Après environ 2 milliards d'enregistrements, vous atteindrez «zéro», puis vous continuerez à environ 2 milliards.
Quant à savoir pourquoi il serait utile d'avoir des "clés négatives" dans une table, c'est la même question que "pourquoi est-il utile d'avoir des clés dans une table". La "valeur" d'une clé n'a aucun impact sur son statut de clé. Une clé est une clé est une clé.
Ce qui est important, c'est si la clé est valide.
Quant à savoir pourquoi il serait utile d'autoriser les clés négatives, je peux suggérer quelques raisons:
Et si vous vouliez indiquer les retours dans un système de vente sous forme de numéros de commande client négatifs, qui correspondaient au numéro de commande client positif, facilitant ainsi la corrélation (c'est naïf et mal conçu, mais cela fonctionnerait dans un sens de «feuille de calcul»).
Et si vous vouliez avoir une table d'utilisateurs et indiquer que ceux avec des nombres négatifs étaient contrôlés par le système (SO fait cela, pour les utilisateurs du fil de discussion).
Je pourrais continuer, mais vraiment la seule raison pour laquelle le nombre étant négatif est important si vous ou moi lui attribuons de l'importance. En dehors de cela, il n'y a pas de grande raison pour que la valeur d'une clé ait une incidence sur la clé elle-même.