Для меня это выглядит как плохое дизайнерское решение. Поскольку ID является первичным ключом в этой таблице, он будет допустимым значением для всех отношений внешнего ключа. Это означает, что вам нужно очень усердно работать на внешнем уровне / уровне бизнеса, чтобы гарантировать, что значения находятся в допустимом диапазоне.
Например, при настройке таблиц для таблицы 2 абсолютно допустимо использовать 1 в качестве значения поиска вместо 2, которое предполагается использовать - и база данных не будет его перехватывать.
Я бы, наверное, не пошел по этому пути. Я просто создам схему с именем lookups и создаю одну таблицу подстановки для каждого значения подстановки. Таким образом, база данных будет правильно обеспечивать соблюдение всех ограничений.
При настройке таблицы поиска вы в настоящее время ограничены целочисленными внешними ключами. В некоторых случаях это может быть плохой идеей - например, вы хотите хранить код страны / коды для государства, а не целочисленные значения, представляющие их.