Ini disebut kunci komposit.
Jika Anda ingin mengubah PK Anda yang sebenarnya menjadi PK komposit, gunakan
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>);
Anda juga dapat menambahkan batasan unik (PK Anda akan sama, dan pasangan unik... harus unik).
alter table <your table> add [constraint <constraint name>] unique index(<col1>, <col2>);
Secara pribadi, saya akan merekomendasikan solusi kedua (PK sederhana + batasan unik), tapi itu hanya sudut pandang pribadi. Anda dapat mencari argumen pro dan kontra di Google tentang kunci komposit.
Bagian antara []
bersifat opsional.
EDIT
Jika Anda ingin melakukan ini dalam pernyataan buat tabel
Untuk pk komposit
CREATE TABLE Test(
id1 int NOT NULL,
id2 int NOT NULL,
id3 int NOT NULL,
PRIMARY KEY (id1, id2)
);
Untuk indeks unik
CREATE TABLE Test1(
id1 int NOT NULL AUTO_INCREMENT,
id2 int NOT NULL,
id3 int NOT NULL,
PRIMARY KEY (id1),
UNIQUE KEY (id2, id3)
);