В любом случае, нет необходимости создавать строки в любой из таблиц, для которых у вас нет данных. Это нормально, например, иметь ряд двигателя, который не соответствует автомобилю. Вы можете добавить то, чего не хватает, когда найдете это.
Мне кажется, я понимаю дизайн. Каждое транспортное средство может иметь один двигатель и одну коробку передач. Но вы можете записать трансмиссию или двигатель до того, как найдете автомобиль.
Они действительно являются отдельными сущностями, поэтому относитесь к ним как к таковым. Вы можете легко получить двигатели и трансмиссии, которые никогда не соответствуют автомобилю.
Еще один более интересный вопрос - можете ли вы в конечном итоге получить трансмиссию с двигателем, но без транспортного средства. Часто можно увидеть двигатель и механизм сцепления, скрепленные болтами, и ни одного автомобиля не видно. И они часто будут продаваться вместе.
На самом деле, вы можете вообразить любую из трех существующих в одиночку или соответствовать одной или двум другим сущностям.
Триггеры здесь не играют роли. Если они вообще используются, триггеры должны быть ограничены детальными правилами ссылочной целостности структуры схемы, а не бизнес-правилами, подобными этим. Не существует обязательных ограничений - каждый внешний ключ является необязательным (обнуляемым). И есть несколько различных способов настроить поля FK.