我有这张表用于存储照片信息:
CREATE TABLE foto (
id int(11) NOT NULL auto_increment,
id_galerie int(11) NOT NULL,
filename varchar(255) NOT NULL,
sort_nr int(11) NOT NULL default 1,
UNIQUE KEY (id_galerie, sort_nr),
PRIMARY KEY (id)
)
我需要自动增加列sort_nr,但仅限于一个id_galerie。所以我尝试了这个插入查询:
INSERT INTO foto (id_galerie, filename)
VALUES
(1, 'filename'),
(1, 'another filename'),
(1, 'anothername'),
(1, 'another value')
ON DUPLICATE KEY UPDATE sort_nr = sort_nr+1
但它抛出了一个错误(#1062 - 键“id_galerie”的重复条目“1-2”)。如果键不唯一,如何强制sort_nr自动递增?