Bạn phải hoán đổi thứ tự các chỉ mục của mình:
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 ;
Tôi trích dẫn từ hướng dẫn sử dụng :
Đối với bảng MyISAM, bạn có thể chỉ định AUTO_INCREMENT trên phụ trong một chỉ mục nhiều cột.
Ví dụ làm việc trong fiddle này