В каждом учебном пособии, который я видел о моделях баз данных Multitenant, вы должны указывать TenantID в каждой отдельной таблице:
zoos
-------
id
zoo_name
tenant_id
animals
-------
id
zoo_id
animal_name
tenant_id
Однако это кажется лишним для меня. Почему бы не добавить столбец tenant_id только в таблицу zoos и использовать отношение внешнего ключа между zoos и animals?
Добавляете ли вы tenant_id к каждой таблице только для того, чтобы объединения не становились слишком сумасшедшими? Это защита от ошибок? Оценка эффективности?