Я не уверен, что означает «имя» в этой таблице.Если это безопасно для меня, игнорировать это.,.
Если у каждого имени пользователя может быть только один "rights_id", то первичным ключом должно быть имя пользователя.Если у каждого имени пользователя может быть более одного «rights_id» - если у пользователя Catcall одновременно могут быть и Rights_id 1 и 2, то вашим первичным ключом должна быть пара столбцов (rights_id, username).
Поскольку MySQL не применяет ограничения CHECK, у вас должна быть отдельная таблица номеров идентификаторов прав, содержащая три строки.
create table rights_ids (
rights_id integer primary key
);
insert into rights_ids values (1);
insert into rights_ids values (2);
insert into rights_ids values (3);
Затем вы можете установить ограничение внешнего ключа, которое будет препятствовать появлению любых чисел, кроме этих трех, в таблице с именем "access".Что-то вроде
alter table access
add constraint foreign key (rights_id) references rights_ids (rights_id);