Je confirme ce que dit gpl73 sauf pour l'aspect PHP. PhpMyAdmin permet parfaitement de définir un VARCHAR (par ex) comme clé primaire.
Après, c'est plus une question pratique, en particulier sur les jointures. Les clé primaires composées, ça peut vite devenir galère à gérer Un id de type entier, au moins, c'est simple à gérer
Edit : après, pour accélérer les recherches, tu peux très bien définir une clé primaire de type entier et pour un champ texte (plus pertinent pour les recherche) ou une composition de plusieurs champs, définir un index de type "unique".
Message édité par rufo le 23-04-2014 à 15:11:38
---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta