Уважаемые гуру! На многих аналогичных форумах Украины я задал тот же вопрос. С чем я столкнулся?
Как такое может быть, что везде нам, студентам, навязывается непонятный ID в каждую таблицу? Зачем он мне, если все равно там будет присутствовать естественный ключ? А искусственный зачем? Это же мусор. Я просто не понимаю.
К примеру, ЭКЗАМЕН - все знают, что «оценку» за экзамен можно разыскать только благодаря конкатенации: "дисц+преподаватель+студент+курс+...+…".
И? Что мне даст "номер ведомости", если он будет сорить на винте? Или просто "номер записи"? Какая странная личность "внедрила" такой идиотизм в БД? Сколько лет он длится? И главное, если это длится больше 30 лет (мне так показалось), о каком корректным «датамайнинге» нам вешает лапшу преподаватель? О какой аналитике данных может идти речь при такой анти-математической дури?
Что нам с вами мешает выбирать коды всех сущностей только в соответствии с числом записей в таблице. И тогда все связи, как вот экзамен, также будут иметь естественный составной ключ исключительно пропорциональным совокупности всего «декартового произведения»?
Реально ничего не понимаю. Есть известный факт еще от Петера Чена (76 год вроде бы). В любой ПрО ВСЕГДА будут атомарные сущности (таких в жизни просто нет, но если вдруг найдутся, то в них только ID, здесь ничего не поделаешь), слабые сущности (в них уже конкатенация «наследников-предков» id1+id2+id3+…+idn) и составные сущности (они же связи – в них такие же конкатенации по структуре id1+id2+id3+…+idn).
А самое главное – такие структуры элементарно автоматизироваться на протяжении всего текста проги.
Да, можно сказать, что все такие совокупности частей ключей есть также ключ. Так дело не в том же! Они же будут и так присутствовать в таблицах, если вы будете проектироваться строго в соответствии с правилами Чена.
Как же вы спроектируете, например, таблицы «отдел», «кафедра», "факультет", "подразделение" или «квартира» без кодов предков?
Что вам скажет строка например «квартира номер 2007162003»? Это же полный идиотизм, если мы не знаем, что здесь 20 – это например город Одесса, 071 – это улица именно в этом городе, ну там… «Новосельского», 62 – это номер дома именно на ней (там вроде ПриватБанк находится, не помню точно, там еще Кирха есть), а уже 003 – номер квартиры .
Такие ID – уже все понятно, здесь нет недоразумений. А вот если он рандомный?
Какая проблема «тиражировать» структурированные коды, если всем давно от Петера Чена известно, что атомарных сущностей – просто не существует (ну или мизер, скажем, 1-2 на любой ПрО), слабых – примерно 50-60, не больше. А остальные – связи, то есть составные отглагольные существительные, как концерт, экзамен, митинг, запрос, заказ и т.д.
Обратите внимание, именно такие структурированные ID сразу же впишутся в математическую модель датамайнинга. Кто нам мешает проектировать не бездумные придурковатые рандомные ID, а сугубо семантические, строго моделирующие диаграмму Чена?
Простите пожалуйста, я не понял, зачем такая ерунда? Если вместо «рандомности» поставить кодировку содержания, все становится понятным. Неужели на протяжении этих многих лет никто это все не проанализировал? Вот никогда не поверю! Так подскажите пож!!
Где «оно» и почему его нет у наших преподавателей?
Социальные закладки