|
|
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. помогите реализовать структуру базы. Есть два типа адресов: Адрес сотрудника Адрес фирм-клиентов Как будет поступить логичнее реализовать, разделить их на две независимые друг от друга таблицы, или же сделать их в одной. И по поводу реализации того самого справочника адресов. Тип адреса: Страна, Регион, Район, Населенный Пункт, Улица, номер дома, квартира/офис Набросок структуры прилагается Также было предложено,сделать общую таблицу адреса, Справочник адреса id id_strana - Ссылка на справочник стран id_region - Ссылка на справочник региона id_raion - Ссылка на справочник районов id_city - Справочник городов id_street numer kvartira В свою очеред справочники стран, региона, районов, городов, это таблицы с полями id, name И ко всему этому безобразию необходимо реализовать древовидную структуру адреса Россия - Самараская область - Тольятти - Автозаводской район - Центральный и так далее. запутался уже в составлении данного справочника. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 11:33 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
а вам это реально нужно? может хранить текстом адрес и подгружать из КЛАДР классификатор? кстати, вы уверены, что вы сможете так учесть иностранные адреса? С уважением, Naf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 11:39 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Предлагалось держать адреса сотрудника или организации полным текстом в базе. Не желают такого. Хотят именно разделения. Также хотят разделения Фамилий, Имен, отчеств по разным таблицам, с целью их склонения по падежам вручную, но это уже совсем другая история.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 11:50 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Dindilin, Интересно, что за мода такая? Тут в параллельной ветке Нелепый вопрос для опытных профессионалов тоже придумали сущность "адрес" и хотят что-то делать с ее id. Чем принципиально отличаются "типы" адресов сотрудников и фирм-клиентов? Храните id_street, numer (дома, надо полагать?) и kvartira прямо в таблицах с атрибутами сотрудников и клиентов. Нарисовання вами структура смотрится красиво, но не учитывает кучу нюансов территориального-административного деления даже внутри РФ (см. КЛАДР), не говоря уже о мировых масштабах. Кроме справочника улиц, я бы сделал справочник населенных пунктов и справочник территориальных образований, соответствующе справочники типов н.п., тер. образований, ну и улиц, если уж так приспичило Связи подчиненности между территориальными образованиями - ссылками на id родительских объектов (колонка id_ParentRegion). Ну, страны можно выделить в отдельную таблицу, если глобальный масштаб так необходим. С такой структурой тоже не просто работать, но она, хотя бы, не требует переделки при появлении нового уровня территориального деления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 12:38 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Dindilin, Только сейчас разглядел: а telephon зачем в таблице "адрес"?!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 12:45 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
baracs, отредактировал схему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 13:34 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
для чего вы это делаете? хотелось бы узнать С уважением, Naf ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 13:35 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
baracs, Нарисовання вами структура смотрится красиво, но не учитывает кучу нюансов территориального-административного деления даже внутри РФ (см. КЛАДР), не говоря уже о мировых масштабах. Да, вот меж Город ,Регион, Улица, может также находится Район, и поулчается что нужна еще одна таблица, а уж если дерево потом из этого безобразия строить,можно будет рехнутся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 13:36 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Naf, делается это для выведения данных по определенному адресу, городу,региону. И для создания отчетов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 13:39 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Либо вот такой вариант по которому возможно будет отстроить дерево, но логика построения лишена смысла будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 13:55 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Dindilinbaracs, отредактировал схему Отредактировали ее, таки, вы Я не предлагал справочник наименований (я правильно понял назначение таблицы Socr_base?), ну и бог с ним. "Мишку мучает вопрос:" (c) зачем же все-таки нужна таблица "adres"? Почему нельзя street_id, nomer и kv вставить прямо в таблицы firm и sotrudnik? Кстати, колонки nomer и kv делайте символьными. Уж номер дома-то точно: бывают литеры, корпуса, строения... Правда, корпуса и строения лучше вынести в отдельные колонки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 14:07 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Ну как кажется, что лучше хранить все данные об адресах в одной таблице, чем в разных. а а таблице фирмы и сотрудники хранить ссылку на адрес. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 14:30 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Уж номер дома-то точно А ещё бывают, например, такие адреса: "ул. Уличная, дом 13, кв.666, комната 1 ". Как он в Вашу схему впишется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 17:09 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
tanglirУж номер дома-то точно А ещё бывают, например, такие адреса: "ул. Уличная, дом 13, кв.666, комната 1 ". Как он в Вашу схему впишется? Ага, давайте еще койко-место укажем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 17:12 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
tanglir, для таких дел есть поле description =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 20:32 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Naf а вам это реально нужно?+1 Предлагаю таки танцевать от печки Зачем нужен адрес - для почты? тогда идите на почту, берите их базу, подгоняйте под их требования Для отчетов в налоговую - тут кладр рулит Для поиска сотрудников курьерами - тогда добавляйте всякую доп инфу типа "звонить три раза, у соседа злая собака, буду пьян не будите" Далее: кто сказал что адрес у сотрудника или организации может быть один и только один, как минимум почтовый, адрес регистрации, адрес фактического проживания и т.п. Для отчетов - тогда адрес не применим ибо не факт. дешевле добавить однозначное доп поле для группировки по отчетам - продажи по городу, району, области авторХраните id_street, numer (дома, надо полагать?) и kvartira прямо в таблицах с атрибутами сотрудников и клиентов. Смысл выделения в отдельную таблицу адресов иногда есть, но в каждом случае решение надо принимать самостоятельно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2009, 21:29 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
SERG1257Зачем нужен адрес - для почты? тогда идите на почту, берите их базу, подгоняйте под их требования Для отчетов в налоговую - тут кладр рулит А налоговая ведет КЛАДР разве не совместно с почтовой службой? SERG1257Смысл выделения в отдельную таблицу адресов иногда есть, но в каждом случае решение надо принимать самостоятельно. Само собой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2009, 10:08 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
1) Если мы упоминаем КЛАДР то давайте прочитаем определение для чего он создан :) 2) Я бы с очень большим напрягом согласился с предложенной автором структурой если бы он еще а) не претендовал на международность (кантоны, земли, префекуты и те.де) б) объяснил бы мне правильно ли я написал адреса Страна (Россия), Регион (Москва), Район (Калининский), Населенный Пункт (Москва), Улица (Героев Автоматизации), номер дома (д. 23-34-46 корпус 2A строение Б2) , квартира/офис (14/2) Оно из более-менее коректных решений представление адресного пространства в виде дерева с различными типами узлов (город, район, регион, улица, дом, корпус и т.д.), кеширование полного адреса каждого узла в текстовой и возможно какой-либо структуированой форме (например в виде XML) дабы текстовый адрес можно было разобрать P.S. Cписок реальных адресов на примере СПБ 1) Г.САНКТ-ПЕТЕРБУРГ, ШУВАЛОВО, ПЕРВОМАЙСКАЯ УЛИЦА, ДОМ 6А, ЛИТЕРА А 2) Г.САНКТ-ПЕТЕРБУРГ, ПОСЕЛОК ЛЕВАШОВО, ЛЕВАШОВО-2 , ДОМ 1, ЛИТЕРА А 3) Г.САНКТ-ПЕТЕРБУРГ, ПОСЕЛОК ПАРГОЛОВО, ОСИНОВАЯ РОЩА, ОВРАЖНЫЙ ПЕРЕУЛОК, ДОМ 6 4) Г.САНКТ-ПЕТЕРБУРГ, КАНОНЕРСКАЯ УЛИЦА, ДОМ 6-8-10 , ЛИТЕРА А ______________________________________________________ Давайте считать обступившее нас со всех строн коричневое море шоколадным ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2009, 12:14 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
А ведь одна и таже улица может встречатся в разных городах г. Самара, ул. Строителей г. Сызрань, ул. Строителей тогда получается что запись в улицах, Строителей будет не одна а несколько? а если такая улица, будет в 10 городах.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2009, 12:58 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
DindilinА ведь одна и таже улица может встречатся в разных городах г. Самара, ул. Строителей г. Сызрань, ул. Строителей тогда получается что запись в улицах, Строителей будет не одна а несколько? а если такая улица, будет в 10 городах.... Да. Это разные объекты с одинаковым наименованием. Сколько в бывших странах развитого социализма улиц Ленина, даже старшно подумать Вопрос в том, на сколько важен этот факт для решаемой вами задачи. Если, например, надо хранить историю переименований, то важен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2009, 14:22 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
Мм, Господа, а почему бы не использовать простой иерархический справочник? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. TAdr.id->SType В справочнике SType указываем всевозможные варианты типов элементов адреса (от угла в комнате до континентов) и все - в такую структуру почти без избыточности можно поместить адреса от стр Россия, гор. Москва, ул Ленина. дом 1 до стр Россия, Московская обл., Мухагорский район, поселок Абыкакой, проезд Деревенских, дом 7, дробь 2, корпус 1, кв 2, а, комната 17, б. p.s. гдет валялся пакет для импорта кладра в такую структуру :о) То, что обработка такой структуры в основном только рекурсией - нас это не волнует (это волнует программистов). Да и во многих СУБД есть средства работы с иерархическими справочниками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.10.2009, 17:55 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
buhBot, привлекательная структура =) Таким образом id_adres_firm из таблицы Полного адреса фирмы будет равен TAddr.Id и уже по нему собирать полный адрес? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2009, 14:01 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
DindilinbuhBot, привлекательная структура =) Таким образом id_adres_firm из таблицы Полного адреса фирмы будет равен TAddr.Id и уже по нему собирать полный адрес? Совершенно верно. Адрес собирается с конца (квартира->дом->корпус-> и т.д.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2009, 17:10 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
buhBotТо, что обработка такой структуры в основном только рекурсией - нас это не волнует (это волнует программистов). Чтоб я так жил! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2009, 11:54 |
|
||
|
Проектирование справочника адресов клиентов,сотрудников
|
|||
|---|---|---|---|
|
#18+
tanglirУж номер дома-то точно А ещё бывают, например, такие адреса: "ул. Уличная, дом 13, кв.666, комната 1 ". Как он в Вашу схему впишется? Бывает и просто "д. Сусай", без улиц и домов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2009, 10:20 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=36255825&tid=1543019]: |
0ms |
get settings: |
7ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
205ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 505ms |

| 0 / 0 |
