Я думаю, что это нормально, если ни вы, ни кто-либо другой не поддадитесь искушению использовать «пустые» столбцы для других целей.
Под этим я подразумеваю, что в вашей новой таблице будут только столбцызаселено для учителей.Кто-то может решить, что есть еще одна ценность, которую они должны хранить для не учителей, и использовать одну из колонок учителя, чтобы удержать ее, потому что в конце концов она никогда не понадобится этому не-учителю, и таким образом мы этого не делаем.необходимо изменить таблицу, и довольно скоро ваш код заполнится данными, проверяющими типы строк, чтобы определить, что содержит каждый столбец.
Я видел, как это было сделано в нескольких системах (например, когда одалживал библиотечную книгу,если заем является долгосрочным заимствованием, срок платежа содержит дату, на которую книга должна быть возвращена, но если это короткий заем, срок погашения удерживает ожидаемое время возврата, и горе всем, кто каким-то образом этого не знает).