Pouvez-vous utiliser l'auto-incrémentation dans MySql avec elle en étant la Clé primaire

Je suis à l'aide de Guid que ma clé primaire pour tous mes autres tableaux, mais j'ai une exigence qui doit avoir un nombre d'incrémentation. J'ai essayé de créer un champ dans la table avec l'auto incrément mais MySql plaint de ce qu'elle devait être la clé primaire.

Mon application utilise MySql 5, nhibernate comme l'ORM.

Solutions possibles, j'ai pensé:

  • modifier la clé primaire auto-incrémentée de champ, mais encore à l'Identifiant comme un GUID pour le reste de mon application est compatible.

  • créer une clé composite à la fois avec le GUID et l'auto-incrémentation du champ.

Mes pensées au moment où le penchant vers la clé composite idée.

EDIT: La Ligne ID (Clé Primaire) est le GUID actuellement. Je voudrais ajouter un Champ INT et qui est Auto Incrémenté de sorte qu'il soit lisible par l'homme. Je n'avais juste pas envie de se déplacer loin de la norme en vigueur dans l'app d'avoir GUID du primaire-clés.

Le nombre d'incrémentation être incrémenté par la base de données ou pourrait-il être calculé à partir du code?
Il est aujourd'hui la raison pour elle de ne pas être calculé à partir du code. Avec elle étant une application web, je ne pensais pas qu'il serait possible à partir du code et de toujours s'assurer de l'unicité. Heureux d'avoir tort si

OriginalL'auteur Nathan Fisher | 2009-03-11