Ссылки FK использовали все значение выражения или его префикс. Значение, а не имя столбца.
Вам необходимо указать значения в 3 разных строках, которые не могут быть предоставлены составным индексом. Итак, создайте 3 отдельных внешних ключа, относящихся к одному индексу tbl_academic(id)
:
ALTER TABLE tbl_acc_payable
ADD CONSTRAINT FK_APAY_SGS_1
FOREIGN KEY (shiftid)
REFERENCES tbl_academic(id)
ON DELETE SET NULL ON UPDATE CASCADE,
ADD CONSTRAINT FK_APAY_SGS_2
FOREIGN KEY (groupid)
REFERENCES tbl_academic(id)
ON DELETE SET NULL ON UPDATE CASCADE,
ADD CONSTRAINT FK_APAY_SGS_3
FOREIGN KEY (sectionid)
REFERENCES tbl_academic(id)
ON DELETE SET NULL ON UPDATE CASCADE;