Вот мой SQL для создания 2 таблиц с соответствующими первичным и внешним ключами. Проблема в том, что я хочу, чтобы в моей дочерней таблице был столбец с автоинкрементом, но я хочу сделать другой столбец в качестве первичного ключа. Как я могу это исправить?
CREATE TABLE patient (
_id INT(5) UNSIGNED AUTO_INCREMENT NOT NULL,
pn VARCHAR(11) DEFAULT NULL,
first VARCHAR(15) DEFAULT NULL,
last VARCHAR(25) DEFAULT NULL,
dob DATE DEFAULT NULL,
PRIMARY KEY (_id)
);
CREATE TABLE insurance (
_id INT(5) UNSIGNED AUTO_INCREMENT,
patient_id INT(5) UNSIGNED NOT NULL,
iname VARCHAR(40) DEFAULT NULL,
from_date DATE DEFAULT NULL,
to_date DATE DEFAULT NULL,
PRIMARY KEY (patient_id),
CONSTRAINT fk_insurance FOREIGN KEY (patient_id)
REFERENCES patient(_id)
);
Это дает мне ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
, и я не знаю, как это исправить. Я новичок в этом, и мне нужна помощь, спасибо.