Можете да го заобиколите, като използвате допълнителна таблица individual_pks (individual_pk integer primary key)
с всички първични ключове както от родител, така и от дете, които ще се поддържат с помощта на тригери (много просто — вмъкнете в individual_pks
при вмъкване, изтрийте от него при изтриване, актуализирайте го при актуализиране, ако се промени individual_pk
).
След това насочвате външни ключове към тази допълнителна таблица вместо дете. Ще има малък удар в производителността, но само при добавяне/изтриване на редове.
Или забравете наследяването и го направете по стария начин – просто една таблица с няколко колони, които могат да се нулират.