Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.10;
Скачать: CL | DM;

Вниз

Нормализация информации   Найти похожие ветки 

 
Альберт   (2008-02-15 14:32) [0]

Доброго времени суток.

Вопрос знатокам:

1.Имеет ли смысл имена клиентов выделять в отдельную таблицу, а в основной проставлять только ИД записи имени.

2.Могут ли при этом быть проблемы с сортировкой основной таблицы ?

Прошу привести аргументы за и против.

Заранее спасибо за ответы.


 
Anatoly Podgoretsky ©   (2008-02-15 14:47) [1]

Связь один к одному оправдана только на плохих базах.


 
Sergey13 ©   (2008-02-15 14:49) [2]

> [0] Альберт   (15.02.08 14:32)
> а в основной проставлять только ИД записи имени.

А что содержится в основной?


 
Альберт   (2008-02-15 14:54) [3]

Ладно скажу так.
У меня три важных поля: "Фамилия", Имя, "отчество".
Так вот при наличии сотни тысяч записей считаю необходимым поле "Имя" вынести в отдельную таблицу. Таблица имен будет максимально заполнена из всех известных имен.


 
Альберт   (2008-02-15 14:56) [4]

Да, основную таблицу не я придумал.


 
Альберт   (2008-02-15 14:58) [5]

На данный момент три вышеприведенных поля в составе "Primary key"


 
Sergey13 ©   (2008-02-15 15:01) [6]

> [5] Альберт   (15.02.08 14:58)

И что, ты не допускаешь мысли о двух (или более) Ивановых Иванов Ивановичей?

ЗЫ: было сомнение, теперь оно отпало - ты фигней занимаешься. см [1].


 
Anatoly Podgoretsky ©   (2008-02-15 15:04) [7]

> Sergey13  (15.02.2008 15:01:06)  [6]

Какие проблемы, одного уволить.


 
Альберт   (2008-02-15 15:04) [8]


> Sergey13 ©   (15.02.08 15:01) [6]

Ну чего сразу стеб про одинаковые записи.

Есть поле еще "серия и номер паспорта"


 
Альберт   (2008-02-15 15:06) [9]


> было сомнение, теперь оно отпало - ты фигней занимаешься.
>  см [1].

Не убедил


 
Альберт   (2008-02-15 15:12) [10]

Имея таблицу имен и поля с добавочными окончаниями можна очень много сделать полезного для приемной и т.д.

Пример: склонение имен по падежам.


 
Сергей М. ©   (2008-02-15 15:12) [11]


> чего сразу стеб про одинаковые записи


Почему стеб-то ?
Вполне резонный вопрос - если такая ситуация возможна, то почему у тебя она недопустима ?

Если уж на то пошло, то выносить в отдельный справочник следует все три поля : Имя, Отчество, Фамилия.


 
Sergey13 ©   (2008-02-15 15:14) [12]

> [9] Альберт   (15.02.08 15:06)
> Не убедил

Я и не пытался. Ты же не привел аргументов в пользу решения вынести имена (кстати а почему отчество тогда тоже ен вынести?) в справочник. Ты просто спросил "А не забабахать ли нам вот такую фиговину?"


 
Альберт   (2008-02-15 15:15) [13]


> Если уж на то пошло, то выносить в отдельный справочник
> следует все три поля : Имя, Отчество, Фамилия.


Вот это уже нормальный ответ.
Я и спросил про "Имя", так как на основании этого поля можно создать и отчество как для мужчин так и женщин.


 
Сергей М. ©   (2008-02-15 15:15) [14]


> Пример: склонение имен по падежам


Секретарша-блондинка упарится изобретать для этой таблицы падежные варианты имен корейцев, китайцев и прочих узбеков)


 
Anatoly Podgoretsky ©   (2008-02-15 15:15) [15]

> Сергей М.  (15.02.2008 15:12:11)  [11]

Я пока ни слова не вижу про справочник, так какие то общие рассуждения и никакой постановки задачи.


 
Альберт   (2008-02-15 15:16) [16]


> Секретарша-блондинка упарится изобретать для этой таблицы
> падежные варианты имен корейцев, китайцев и прочих узбеков)

согласен, плохой пример.


 
Сергей М. ©   (2008-02-15 15:16) [17]


> "Имя", так как на основании этого поля можно создать и отчество
> как для мужчин так и женщин


Как насчет "Оглы" ?)


 
Альберт   (2008-02-15 15:18) [18]


> Я пока ни слова не вижу про справочник

извините, не так выразился.

Таблица-справочник имен с дополнительными полями.


 
Сергей М. ©   (2008-02-15 15:18) [19]


> плохой пример


Но это же не означает, что секретарше таки не придется работать при помощи твоей программы с прочими узбеками, так ?


 
Сергей М. ©   (2008-02-15 15:20) [20]


> Таблица-справочник имен


Почему только имен-то ?

А фамилий и отчеств ? Их же тоже надо склонять, коль уж требуется автоматизация процесса падежного склонения узбеков)


 
Sergey13 ©   (2008-02-15 15:24) [21]

> [10] Альберт   (15.02.08 15:12)
> можна очень много сделать полезного для приемной

А чего приемная то? Прачечная что-ли? Или премная депутата?
Чего хочется то в конечном итоге?


 
Anatoly Podgoretsky ©   (2008-02-15 15:27) [22]

> Альберт  (15.02.2008 15:18:18)  [18]

Смотря какая цель, можно немного размер базы уменьшить, за счет усложнения работы.
Но решение иногда используется, а критерием является условия работы оператора.


 
Сергей М. ©   (2008-02-15 15:29) [23]

Вот придет в приемную какой-нть Остап Ибрагим Сулейман Берта Мария Бендер-Бей - попробуй-ка занести его в свой электронный гроссбух да посклонять)


 
Sergey13 ©   (2008-02-15 15:31) [24]

> [8] Альберт   (15.02.08 15:04)
> Есть поле еще "серия и номер паспорта"

1.А если у человека нет [вообще или с собой] паспорта? Или он не российский например?
2. А если потребуются таблицы ссылающиеся на твою "основную" (ведь логично предположить и наличие НЕосновных), ты будешь все 5 атрибутов переписывать для ссылки?
3. А если человек поменяет паспорт/ФИО?

Это к определению твоего ПК.


 
Правильный_Вася   (2008-02-15 15:31) [25]

видел я подобные справочники
и реализация никогда не выходила за рамки самой идиотской

1. кроме того, в зависимости от национальности человека его имя может склоняться или не склоняться по падежам, даже если оно одинаковое
2. многие имена/отчества/фамилии имеют несколько форм для каждого падежа, но в паспорте у человека прописано строго одно (например, Витальевич и Виталиевич)
как ты это в справочник хочешь втулить?

так что вывод: хочешь формы склонения - встраивай их в карточку конкретного клиента, а не в абстракный справочник имен


> спросил про "Имя", так как на основании этого поля можно
> создать и отчество как для мужчин так и женщин.

интересен взгляд на отчество от имени Елена


 
Сергей М. ©   (2008-02-15 15:34) [26]


> интересен взгляд на отчество от имени Елена


Это уже не отчество, а какое-то "матершинство" получится - "Еленович")..
Хотя никто вроде бы не мешает челу с именем "Елена" фигурировать в ксиве мужчиной)


 
Johnmen ©   (2008-02-15 15:47) [27]

1. Не только не имеет, но и является полной ерундой.
2. вопрос отпал...


 
Альберт   (2008-02-15 16:35) [28]


> интересен взгляд на отчество от имени Елена


до конча не читаем ?

> Таблица-справочник имен с дополнительными полями.

для имена Елена поле "Отчество" будет "null", достаточно стеба.

То что хотел услышать, я уже услышал.

Всем спасибо.


 
Сергей М. ©   (2008-02-15 16:39) [29]


> для имена Елена поле "Отчество" будет "null"


Дискриминация сексменьшинств)


 
Правильный_Вася   (2008-02-15 16:42) [30]


> для имена Елена поле "Отчество" будет "null", достаточно стеба.

а если это мужское имя какого-нибудь малайца?

снимаем шоры с мышления, расширяем сознание


 
Anatoly Podgoretsky ©   (2008-02-15 16:44) [31]

> Сергей М.  (15.02.2008 16:39:29)  [29]

Какие еще меньшинства - большинство


 
Anatoly Podgoretsky ©   (2008-02-15 16:45) [32]

> Правильный_Вася  (15.02.2008 16:42:30)  [30]

И вообще астрашируемся.
Программист должен уметь абстрактно думать.


 
Сергей М. ©   (2008-02-15 16:47) [33]


> Anatoly Podgoretsky ©   (15.02.08 16:44) [31]


В смысле отцы с традиционно женским (по кр.мене по русским народным представлениям) именем с нек.пор перешли в разряд большинства ?)


 
Правильный_Вася   (2008-02-15 16:50) [34]

и вообще, второе (третье и т.п.) имя не обязано быть отчеством, тем более производным от мужского имени
пример уже приводили
Остап Сулейман Берта Мария Бендер-бей


 
Альберт   (2008-02-15 17:18) [35]


> Чего хочется то в конечном итоге?

Максимальную информацию по клиентам.


> Смотря какая цель, можно немного размер базы уменьшить,
> за счет усложнения работы.
> Но решение иногда используется, а критерием является условия
> работы оператора.

Хороший совет, отдельное спасибо.


> 1.А если у человека нет [вообще или с собой] паспорта? Или
> он не российский например?

для этой цели есть документ его заменяющий, причем в отдельной таблице.


 
Павел Калугин ©   (2008-02-15 17:45) [36]


> Альберт   (15.02.08 17:18) [35]

1. не имеет, так же как и не имеет смысла ключом делать документ. ИНН еще куда ни шло но не у всех он есть. а документ? один и тот же Вася Пупкин с паспортом и с загран паспортом уже 2 Васи?

2. проблемы будут
    1. со вставкой удалением изменением
    2. с написанием горы кода -> "утяжеление" системы
    3. операторы взвоют. Особенно если ФИО больше 3-х слов
    4. сортировать можно по разным полям без проблем но выборка из одной таблицы все же чуть быстре чем из 2-х


 
Альберт   (2008-02-15 17:45) [37]


> 2. А если потребуются таблицы ссылающиеся на твою "основную"
> (ведь логично предположить и наличие НЕосновных), ты будешь
> все 5 атрибутов переписывать для ссылки?


про 5 атрибутов, если не жалко времени по подробнее, плиз.


 
Альберт   (2008-02-15 17:52) [38]


> Павел Калугин ©   (15.02.08 17:45) [36]


Большое Спасибо за толковый ответ, как раз то что нужно и без подначек.


 
Правильный_Вася   (2008-02-15 18:11) [39]


> без подначек

подначки стимулируют мыслительную деятельность
а если они стимулируют язык, тебе не в програмисты, а в менеджеры надо


 
Ega23 ©   (2008-02-17 10:19) [40]

Хочу напомнить, что далеко не у всех есть Фамилия, Имя и Отчество.
У монголов, например, нет фамилии. Только Имя и Отчество.
У каких-нибудь зимбабвийцев кроме основного имени может быть родовое и запасное.
И т.д.
Это я всё к тому, что специфику применения справочника тоже нужно учитывать.



Страницы: 1 2 3 вся ветка

Текущий архив: 2008.08.10;
Скачать: CL | DM;

Наверх




Память: 0.57 MB
Время: 0.021 c
4-1194331961
MG
2007-11-06 09:52
2008.08.10
Доступ к веткам реестра всех пользователей одновременно


3-1203881506
Novichek
2008-02-24 22:31
2008.08.10
Сохранение данные по средствам ADOStoredProc


11-1192628677
Jon
2007-10-17 17:44
2008.08.10
Problem with LoadLibrary


15-1213789690
Игорь М.
2008-06-18 15:48
2008.08.10
файл с расширением *.FRP чем открыть ?


2-1215539957
GrieVeR-13
2008-07-08 21:59
2008.08.10
Проблема с функциями EnumWindows и GetWindowText