Říká se tomu složený klíč.
Pokud chcete změnit svůj skutečný PK na složený, použijte
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>);
Můžete také přidat jedinečné omezení (vaše PK bude stejná a jedinečné páry... budou muset být jedinečné).
alter table <your table> add [constraint <constraint name>] unique index(<col1>, <col2>);
Osobně bych doporučil to druhé řešení (jednoduché PK + jedinečné omezení), ale to je jen osobní úhel pohledu. Můžete vyhledat argumenty pro a proti složeným klíčům.
Část mezi []
jsou volitelné.
UPRAVIT
Pokud to chcete udělat v příkazu create table
Pro kompozitní pk
CREATE TABLE Test(
id1 int NOT NULL,
id2 int NOT NULL,
id3 int NOT NULL,
PRIMARY KEY (id1, id2)
);
Pro jedinečný index
CREATE TABLE Test1(
id1 int NOT NULL AUTO_INCREMENT,
id2 int NOT NULL,
id3 int NOT NULL,
PRIMARY KEY (id1),
UNIQUE KEY (id2, id3)
);