powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
25 сообщений из 65, страница 2 из 3
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486530
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry V. LiseevЕсли мобильник - девайс персональный, то городской рабочий телефон, домашний, особенно установленный в коммуналке, обычно используется несколькими людьми. Тогда связь между человеком и телефоном становится "много ко многим".
Пока никто не требовал уникальности номеров телефонов...
Т.ч. не стоит искать проблему где ее нет.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486548
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoОдин и тот же телефон, но с разными суррогатами? И если в номере ошибка править в нескольких местах? И чтобы сложней было сразу увидеть, что у одного телефона несколько челов? Или что?
Такими темпами у тебя появится таблица "Смена номера", ведь номер могут и поменять!
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486650
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsavadiminfoОдин и тот же телефон, но с разными суррогатами? И если в номере ошибка править в нескольких местах? И чтобы сложней было сразу увидеть, что у одного телефона несколько челов? Или что?
Такими темпами у тебя появится таблица "Смена номера", ведь номер могут и поменять! Нууу... у нас оно именно так и хранится. Каждый строка Effective_Start_Date, Effective_End_Date. Удобно.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486678
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsavadiminfoОдин и тот же телефон, но с разными суррогатами? И если в номере ошибка править в нескольких местах? И чтобы сложней было сразу увидеть, что у одного телефона несколько челов? Или что?
Такими темпами у тебя появится таблица "Смена номера", ведь номер могут и поменять!
Не смог связать Ваш ответ с цитатой никак.
Я никаких таблиц не предлагал, а спрашивал о том как суррогаты отменят многие ко многим, если у чела много телефонов и один телефон у многих, если что.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486681
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoЭто как? Один и тот же телефон, но с разными суррогатами? И если в номере ошибка править в нескольких местах?

Жесть
vadiminfoИ чтобы сложней было сразу увидеть, что у одного телефона несколько челов? Или что?
А нафига это видеть?

White OwlНууу... у нас оно именно так и хранится. Каждый строка Effective_Start_Date, Effective_End_Date. Удобно.
А что является primary key?

Против effective date ничего не имею, обычная историчность
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486692
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevОдин и тот же телефон, но с разными суррогатами?
Да, конечно.

Введение полноценной БД телефонов (номеров) при котором может появится связь многое-ко-многим усложняет задачу на порядок. И для разработчика и для пользователя(!). Не давая взамен никакой новой осмысленной дополнительной функциональности.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486704
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevЖесть

Вообще то это был вопрос.
Хотелось бы на него ответ получить. Все таки Ваше утверждение выглядит типа "не по учебникам", так как до сих пор суррогаты не претендовали на то, чтобы "то никаких "много ко многим" не будет", если оные есть в ПО (раз "номер телефона делать Primary Key" и они будут).

Leonid KudryavtsevА нафига это видеть?

Ну раз она есть в ПО, а мы оную моделируем в БД, то для того чтобы МД как бы лучше ответствовала этой самой ПО.
Это упростит понимание ифны в БД.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486707
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid KudryavtsevНе давая взамен никакой новой осмысленной дополнительной функциональности.

дает в замен или не дает взамен
тут уж многое зависит от способностей к осмыслению.
REM то же касается и усложнения задачи "на порядок"
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486721
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevLeonid KudryavtsevОдин и тот же телефон, но с разными суррогатами?
Да, конечно.

Введение полноценной БД телефонов (номеров) при котором может появится связь многое-ко-многим усложняет задачу на порядок. И для разработчика и для пользователя(!). Не давая взамен никакой новой осмысленной дополнительной функциональности.

Вот так бы и сразу.

Связь многие ко многим есть в ПО.
Просто в Вашей МД это не видно: модель менее адекватно отображает ПО структурно.
Проблемы ОЦ: ведь БД предполагать повторы номеров, поэтому допускает, чтобы одному челу один номер ввели хоть сто раз. А поскольку будут опечатки, то это будут уже разные номера в БД.
Если номер общий номер изменился менять нужно будет в нескольких местах вместо одного - типа контроль избыточности получатся.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486737
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычно потребность в subj, т.е. ведение справочника контактов с человеком/клиентом возникает в задачах a la CRM /Система управления взаимоотношениями с клиентами/. Данные системы обычно не ведут БД телефонных номеров AFAIK.

Разумеется, если мы не говорим о системах или бизнесе связанных с телефонией и телекоммуникациями. Там, скорее всего, сущность "телефонный номер" будет представлять интерес.
Один и тот же телефон, но с разными суррогатами?
Да, см. выше
И если в номере ошибка править в нескольких местах?
Да, только так и никак иначе. Это единственный известный мне юзер френдли и понятный интерфейс.

У Вас есть другие предложение? Которые значительно не усложнят жизнь пользователю в обычной учетной или бухгалтерской системе?

"Жесть" - т.к. пытаясь внедрить не нужный функционал, Вы, скорее всего, _значительно_ ухудшите юзабилите и заставите пользователей Вашей системы вспоминать Ваше имя с матом.
И чтобы сложней было сразу увидеть, что у одного телефона несколько челов?
А зачем?
Бессмысленное требование, скорее всего.
vadiminfoНу раз она есть в ПО, а мы оную моделируем в БД, то для того чтобы МД как бы лучше ответствовала этой самой ПО.
Это упростит понимание ифны в БД.
Не читайте книжек Гради Буча перед едой или сном )))
/Тут смайлик!/
полином
Хоть один пример реальной системы (кроме сферы телекомуникаций), где в связки клиент-контактное лицо-номер телефона, "номер телефона" сделан полноценной сущностью. Со всеми необходимыми на нем (сущности) операциями.

Что бы можно было предметно разобрать достоинства традиционного подхода (пусть например OeBS) и реализации полноценной БД "телефонных номеров" со связкой с клиентами/людьми/организациями.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486747
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfo...Проблемы ОЦ: ведь БД предполагать повторы номеров, поэтому допускает, чтобы одному челу один номер ввели хоть сто раз. А поскольку будут опечатки, то это будут уже разные номера в БД.
Если номер общий номер изменился менять нужно будет в нескольких местах вместо одного - типа контроль избыточности получатся.
Ничего не понял.

1. Что такое ОЦ?
2. ведь БД предполагать повторы номеров - с чего это? "Обычно" одним номером пользуется один или несколько человек. Ситуация "повторы номеров" скорее всего достаточно редкая и не заслуживает никакого внимание. Если даже такое и есть, то это обычно не интересно.
3. А поскольку будут опечатки - опечатки есть всегда, проблемы не вижу.
4. Если номер общий номер изменился менять нужно будет в нескольких местах вместо одного - сущность "общий номер" в системе нет. Есть человек, есть номер телефона/ов которыми он пользуется. Если у человека изменился номер телефона (например он сменил квартиру, снял другую комнату), менять нужно в ОДНОМ месте. В карточке ДАННОГО человека.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486806
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid KudryavtsevХоть один пример реальной системы (кроме сферы телекомуникаций), где в связки клиент-контактное лицо-номер телефона, "номер телефона" сделан полноценной сущностью. Со всеми необходимыми на нем (сущности) операциями.


затруднюсь с конкретным примером (свой опыт рекомендовать было бы не скромно)
но думаю разработчики такой "реальной системы" не задавались вопросом который возник у ТС

и кстати задача предложенная вами к рассмотрению "клиент-контактное_лицо-номер_телефона"
существенно отличается от вопроса в постановке ТС - это ваше прочтение и оно не верно

вам следовало бы открыть новый топик и задать ваш вопрос в нем, если бы только вы им задались
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486807
полином
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsevменять нужно в ОДНОМ месте. В карточке ДАННОГО человека.

леонид, извините меня, конечно

но похоже вам следует почитать хоть что-то, хоть что-нибудь по разработке БД
прежде высказывать свое видение решения проблем.

а то вы какие-то совершенно неандертальские подходы демонстрируете
мне уже просто страшно
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486884
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoНе смог связать Ваш ответ с цитатой никак.
Нет - так нет...

vadiminfoЯ никаких таблиц не предлагал
А пора бы уже и предложить что-то.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486889
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevДа, только так и никак иначе.

В ощем случае, скорее всего, иначе: менять в одном месте. Вы есче нормальные формы отмените: они тоже в том числе чтобы было иначе.

Leonid KudryavtsevНе читайте книжек Гради Буча перед едой или сном )))
/Тут смайлик!/

Ну поскольку речь шла о книжках по БД, то получается их тоже не читать. Кого же читать? Неужели предложите заменить их Вашими текстами на форуме?

Leonid Kudryavtsev1. Что такое ОЦ?


Читайте книжки по БД. Это ограничения целостности - логические правила которым должены отвечть данные. Например, ОЦ уникальность на телефоны не позволит один и тот же телефон заносить дважды.

Leonid Kudryavtsev2. ведь БД предполагать повторы номеров - с чего это?

С того что нет выше указанного ОЦ. Значит юзер может одному и тому челу допускается набить один и тот же телефон много раз.

Leonid Kudryavtsev3. А поскольку будут опечатки - опечатки есть всегда, проблемы не вижу.

Проблема в том что это на самом деле должен был быть один у нескольких, а теперь разные. Соотвественно, обнаружив что нет нужного юзер вместо исправления добавить правильный. Т.е. контроль опечаток имеет потенциал усложнения.

Leonid KudryavtsevЕсть человек, есть номер телефона/ов которыми он пользуется. Если у человека изменился номер телефона (например он сменил квартиру, снял другую комнату), менять нужно в ОДНОМ месте. В карточке ДАННОГО человека.
Изменился номер в комуналке, или другой какой общий.

Кроме того, суррогаты здесь все равно ни при чем: у Вас просто несколько "искаженая" МД. Оно может быть как с суррогатами так и с естественными. С друой стороны для многие ко многим суррогаты юзаются.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486902
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfo , где твой пример структуры?
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486905
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa vadiminfo , где твой пример структуры?
А причем здесь какой-то мой пример структуры? Хотите сказать что структура для многие ко многим не известна? Или что?
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486923
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoА причем здесь какой-то мой пример структуры?
Действительно! Зачем она?!
Ведь тогда все прекратиться. А так можно будет бесконечно разводить "дискуссии" х/з очем...
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486936
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaДействительно! Зачем она?!
Ведь тогда все прекратиться.

Ну вот типа в ветке привели, и не прекратилось все. А даже наоборот.


krvsaА так можно будет бесконечно разводить "дискуссии" х/з очем...
Действительно. Налабал струкуту и готово. И нечего "разводить "дискуссии"". Такая мол парода стуктуры, ниче не попишешь.


Вы бы луче Вашей структуре на давали одно имя id разным атрибутам. И разное одном (id в одной таблице, "пользователь" в другой судя по связям). А не обращали внимание на дискусии, которые для Вас "х/з очем".

Тут чел изобрел метод с помощью суррогатов от многие ко многим избавляться. Это поинтереснее структур в этой ветке.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486973
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfo , от тебя будет пример структуры? Да или нет?
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486989
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa vadiminfo , от тебя будет пример структуры? Да или нет?
Не вижу связи вопроса с моими текстами. Никаких причин прводить какие-то структуры из "дискусии" в которой участвую вроде не было. Там все очевидно и так, вроде.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38486996
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жесть.

Vadiminfo, Вы хоть одну реальную учетную систему видели?

И хоть одного реального пользователя, который справочник клиентов и их телефоны поддерживает. С предложением отслеживать общие номера телефонов, изменение номеров телефонов в коммунальных квартирах и прочее - к ним. Только рекомендую такие предложения высказывать по телефону. При личной встречи, несмотря на то, что там обычно женщины работают - могут каблуками забить )))

Суррогаты тут при том, что номер телефона здесь совершенно НЕ при чем. Т.к. есть клиент (в задаче топикастера пользователь), если способы с ним связаться. Телефон - один из многих способов. Просто текстовое поле с буковками и цифирьками. Возможно с какими-то базовыми проверками (что бы полную чушь туда не вбивали).

Так же может быть e-mail, номер ICQ, номер Skype, вКонтакте, Фейсбук и т.д. еще 100500 различных средств связи.

Специальное выделение "номера телефона" в отдельную структуру IMHO допустимо только в след. случаях - мы автоматизируем телекомуникационный бизнес, существует система автоматического обзвона и уведомление пользователей (да и в этом случае, задача поиска "общих номеров" скорее _вредна_, чем полезно). Других вариантов из реальной жизни мне даже не представить.

Повторюсь: связи многое ко многим в данной задачи взяться вообще НЕ откуда. Если Вы знаете системы, где для такой задачи сделали связь N:N, тогда сразу приводите конкретную ссылку.

AFAIK. Что бы быть более конкретно, обычно делают структуру наподобие:

* Справочник клиентов
* Справочник контактов (телефонов). Например:
суррогатный primary key
ссылка на клиента (1:N)
тип контакта - раб.телефон, мобильный тел, e-mail, ICQ и пр.
собственно контакт, номер телефона
я бы еще добавил какое нибудь поле примечание
возможны поля effective date
что-то еще по вкусу (например для меня выглядят осмысленными поля типа даты последнего дозвона и т.д.)

Разумеется, если структура более формализована, например всегда обязательно требуется номер телефона и опционально e-mail и не может расширяться, справочник контактов, возможно, излишен. 2-а поля в таблице клиента/пользователя и все.

IMHO & AFAIK

Ждем пример рабочей структуры N:N для задачи "клиент(пользователь) - телефоны". Желательно с макетами UI и описанием функций для поддержки такой структуры в работоспособном виде. В полном соответствие с ООП, ПО, МД, БД, ЦО и пр. )))
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38487008
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfokrvsa vadiminfo , от тебя будет пример структуры? Да или нет?
Не вижу связи вопроса с моими текстами. Никаких причин прводить какие-то структуры из "дискусии" в которой участвую вроде не было. Там все очевидно и так, вроде.
Слив защитан...
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38487066
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid KudryavtsevVadiminfo, Вы хоть одну реальную учетную систему видели?

Вообще-то речь шла не о реальных учетных системах, а о Вашем утверждении, что никих "многие ко многим" не будет, если суррогаты... Хотя они (многоие ко многим) есть, в предположаниях о предметной области Dmitry V. Liseev.


Leonid KudryavtsevСуррогаты тут при том, что номер телефона здесь совершенно НЕ при чем. Т.к. есть клиент (в задаче топикастера пользователь), если способы с ним связаться. Телефон - один из многих способов. Просто текстовое поле с буковками и цифирьками. Возможно с какими-то базовыми проверками (что бы полную чушь туда не вбивали).

Где здесь? И в каком смыле причем и не причем номер телефона? Вполне "многие ко многим" можно и суррогатом организовать.
С дргой стороны, в Вашей схеме суррогат заменяет естесвеный идентификатор пользователя, а не телефон, насколько я понял.


Leonid KudryavtsevПовторюсь: связи многое ко многим в данной задачи взяться вообще НЕ откуда.

А она таки "взялась" таки благодаря Dmitry V. Liseev. Т.е. один телефон может быть у многих. И у одного много телефонов - это означает, что многие ко многим "взялась".

Leonid KudryavtsevЕсли Вы знаете системы, где для такой задачи сделали связь N:N, тогда сразу приводите конкретную ссылку.

Речь шла не о "такой" или "не такой" задаче. А вообще об отмене суррогатом связи многие ко многим в принципе.

На практике, если телефоны второсортная инфа, то исажение МД, ради упрощения приложения в целом исключать нельзя.
Оптимизация приложения в целом может допускать деоптимизацию отдельных ее частей, например БД.



Leonid KudryavtsevЖдем пример рабочей структуры N:N для задачи
Не зависмо от задачи структуры для многие ко многим подобны. В том числе и суррогатами:
ЧЕЛ{ИД_ЧЕЛ, ....}; ТЕЛ{ИД_ТЕЛ,....}; ЧЕЛ_ТЕЛ{ИД_ЧЕЛ,ИД_ТЕЛ} - это для всязи многие ко многим

Это вроде все достаточно избито. Так что не понял, что тут можно ждать.
...
Рейтинг: 0 / 0
Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
    #38487069
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaСлив защитан...
Угу. Вам только сливы защитывать.
...
Рейтинг: 0 / 0
25 сообщений из 65, страница 2 из 3
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Таблица информации о пользователе- в одном случае есть телефон, в другом нет. Как сделать?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]