C'est ce qu'on appelle une clé composite.
Si vous voulez changer votre PK réel en un composite, utilisez
Alter table <your table> drop PRIMARY KEY;
Alter table <your table> drop COLUMN <your autoincremented column>;
Alter table <your table> add [constraint <constraint name>] PRIMARY KEY (<col1>, <col2>);
Vous pouvez également simplement ajouter une contrainte unique (votre PK sera le même, et les paires uniques... devront être uniques).
alter table <your table> add [constraint <constraint name>] unique index(<col1>, <col2>);
Personnellement, je recommanderais la deuxième solution (simple PK + contrainte unique), mais ce n'est qu'un point de vue personnel. Vous pouvez rechercher sur Google les avantages et les inconvénients des clés composites.
La partie entre []
sont facultatifs.
MODIFIER
Si vous voulez le faire dans l'instruction de création de table
Pour un pk composite
CREATE TABLE Test(
id1 int NOT NULL,
id2 int NOT NULL,
id3 int NOT NULL,
PRIMARY KEY (id1, id2)
);
Pour un index unique
CREATE TABLE Test1(
id1 int NOT NULL AUTO_INCREMENT,
id2 int NOT NULL,
id3 int NOT NULL,
PRIMARY KEY (id1),
UNIQUE KEY (id2, id3)
);