
Envoyé par
laurentSc
j'ai pas saisi l'explication de fsmrel pour dire que cette ligne contournait le défaut de MySQL
Je répète : MySQL est intransigeant et n’en est pas à un diktat près, en l’occurrence en ce qui concerne la colonne LO_ident qui est auto-incrémentée :
« Error Code: 1075. Incorrect table definition; there can be only one auto column and it must be defined as a key »
Etant donné que la clé primaire produite par Looping est à juste titre la paire ordonnée {COU_ident, LO_ident}, on n’y touche pas. Parce que MySQL a écrit qu’une colonne auto-incrémentée doit être defined as a key, sans préciser si cette clé doit être primaire ou non (c’est-à-dire alternative), on met donc en oeuvre la clé alternative {LO_ident} grâce à une contrainte UNIQUE, et manifestement MySQL est content.
Partager