• Using UUIDs as Primary Keys
    http://book.cakephp.org/1.3/view/1016/Using-UUIDs-as-Primary-Keys

    #Primary_keys are normally defined as INT fields. The database will automatically increment the field, starting at 1, for each new record that gets added. Alternatively, if you specify your primary key as a CHAR(36) or BINARY(36), CakePHP will automatically generate UUIDs when new records are created.
    A #UUID is a 32 byte string separated by four hyphens, for a total of 36 characters. For example:
    550e8400-e29b-41d4-a716-446655440000
    UUIDs are designed to be unique, not only within a single table, but also across tables and databases. If you require a field to remain unique across systems then UUIDs are a great approach.

    • Et la conséquence qui peut se révéler un avantage c’est que ça dissuade encore plus d’utiliser les identifiants automatiques (non humains donc) pour appeler telle ou telle ressource.

      Cela oblige donc les concepteurs d’application à utiliser des vraies #IHM pour sélectionner un objet précis, et dans dans le cadre d’un site web ça oblige à utiliser ces interfaces pour décider d’appliquer une présentation à un contenu précis.

      Cf dans #SPIP, les #compositions VS les squelettes par numéro de rubrique ou les boucles dans lesquels on met des identifiants en dur.

      Un utilisateur normal ne devrait jamais avoir à faire avec ce genre d’identifiant machine.