Существует известная дилемма, можно ли использовать данные предметной области для построения структуры отношений ( схемы) БД или это должны быть внутренние данные? Например, хорошо ли использовать номер паспорта1? Некоторые рассуждения могут показаться не очень понятными: внешние данные не контролируются системой, а значит, не контролируется и схема, её качество. Ну и что? Помимо прочего, написал для себя несколько кратких утверждений
1. Данные создаются вне ограничений и контроля.
2. Любые внешние данные могут содержать неустранимые ошибки, это вопрос вероятности.
3. Что означает, для внешних данных нельзя говорить об уникальности и других ограничениях.
4. Использование внешних данных в отображениях схемы означает создание некорректных отображений схемы.
Теперь предлагается практическая задача. Вы - разработчик банковской системы, операционист вводит данные клиента и здесь выясняется, что такой уникальный идентификационный документ в системе уже существует. Как такая ситуация должна обрабатываться в системе?
---
1.
http://www.newsru.com/russia/13aug2015/bashpass.html