Что-то во мне восстает при мысли о
с двумя столбцами, home_id и
realtor_id для каждой записи, один из
который всегда будет нулевым для любого
данная запись. Мой босс говорит, что это
эффективный и избегает накладных расходов
создание новых таблиц. Каковы
права и недостатки этой ситуации?
Ну, вы правы, это, вероятно, менее эффективно, чем оптимальное. Однако добавление еще одного столбца (INT, не менее), который будет равен 50% времени, не повлияет на общую эффективность вашей базы данных.
OTOH, вам потребуется немного усилий для реструктуризации вашего приложения. Просто добавив этот столбец, вы фактически получаете взлом.
Я думаю, что это приемлемо для этой ситуации, хотя вам может не понравиться ее эстетика. Эй, никто не любит хаки Это увеличивает «технический долг». Но посмотрите на этот термин, и вы увидите, что многие люди говорят, что охватывают технический долг, потому что это позволяет вам продолжать двигаться вперед, а не пытаться найти идеальное решение (которое ускользнет Вы, несмотря на все усилия).
Это бизнес-решение - стоит ли эстетика вашей схемы и кодовой базы стоимость (ваша почасовая ставка * # часов, чтобы «правильно» это исправить)? В этой ситуации я бы сказал, что, вероятно, нет.