phpMyAdmin
 sql >> Base de données >  >> Database Tools >> phpMyAdmin

Comment créer un AUTO_INCREMENT contextuel dans MySql ?

Vous devez échanger l'ordre de vos index :

CREATE TABLE IF NOT EXISTS `test` (
    `id` int(10) NOT NULL AUTO_INCREMENT,
    `abc` varchar(50) NOT NULL,
    `data` varchar(100) NOT NULL,
    PRIMARY KEY (`abc`, `id`)   -- id got to be second
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

Je cite le manuel :

Pour les tables MyISAM, vous pouvez spécifier AUTO_INCREMENT sur un secondaire colonne dans un index à plusieurs colonnes.

Exemple de travail dans ce violon