В чем разница если я сделаю в таблице Passport поле employee_id или в таблице Employee поле passport_id
Разница в том, что в первом случае у сотрудника может быть (с точки зрения модели БД) несколько паспортов или не быть вообще. И этот факт будет определяться наличием записи в отношении Passport, что более правильно, нежели простановка в NULL значения passport_id в таблице Employee. Плюс, что для вас первично - сотрудник или паспорт? В нашем проекте это был сотрудник, паспорт могли внести и позднее, поэтому мы выбрали первый вариант (плюс, опять-таки, адекватно моделировалось отсутствие паспорта).
или в таблицу Passport_divisioin_code поле passport_id
Это код подразделения имеется в виду? Ну тогда конечно
Добавлять в таблицу Passport поле passport_divisioin_code_id
, иначе как вы сделаете что у нескольких паспортов один код подразделения?