В конкретном сценарии у меня есть таблица поиска с MachineNumber (Varchar) и ее MachineID (Int). В моей таблице транзакций я ссылаюсь на номер машины, используя MachineID таблицы поиска.
Требование: Могу ли я установить тип поля MachineID как Varchar в таблице транзакций, сохраняя его тип как Int в таблице поиска? Причина в том, что для некоторых машин номер машины не хранится в таблице поиска, и мне нужно сохранить фактический номер машины, предоставленный пользователем, в самой таблице транзакций, а поскольку номер машины является буквенно-цифровым, я хочу изменить тип этого ссылочного поля с Int к Варчар.
В двух словах в таблице транзакций поле MachineID должно содержать как MachineID (ссылка из таблицы поиска), так и фактический номер машины (предоставленный пользователем и сохраненный непосредственно здесь).
Вопрос: рекомендуется ли иметь разные типы для этих ссылочных полей или это обычная практика, как это повлияет на запросы с соединением между этими двумя таблицами?
Спасибо, Алинд