Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Организация структуры таблицы адреса проживания 
:(
    Опции темы
lumentek
Дата 19.11.2009, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



Я имею ввиду такой вариант, если гражданин проживает в населенном пункте ПГТ, но тоесть если это прохоровский район, то он живет не в деревне, а в самой Прохоровке.  Или даже в самом Белгороде, который является центром Белгородской области.
В общем я понял вот  что.  Когда оператор будет вводить адрес, то программа должна сформировать строку адреса только по тем полям, которые будут ведены с учетом логики. Так?

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


PM MAIL   Вверх
Данкинг
Дата 19.11.2009, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Цитата(lumentek @  19.11.2009,  16:34 Найти цитируемый пост)
Я имею ввиду такой вариант, если гражданин проживает в населенном пункте ПГТ, но тоесть если это прохоровский район, то он живет не в деревне, а в самой Прохоровке. 

Ничего не понял. smile 

Цитата(lumentek @  19.11.2009,  16:34 Найти цитируемый пост)
Когда оператор будет вводить адрес, то программа должна сформировать строку адреса только по тем полям, которые будут ведены с учетом логики. Так?

Не сформировать строку, а внести адресные данные в соответствующие поля таблицы.

Цитата(lumentek @  19.11.2009,  16:34 Найти цитируемый пост)
Если так, то проблема будет в том что когда придется редактировать адрес(если потребуется) придется, наверное, каждый тип разделять неким разделителем.

Что разделять, если адрес в таблице хранится в разбитом виде?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Deniz
Дата 20.11.2009, 09:49 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 7
Всего: 44



Цитата(Данкинг @  19.11.2009,  18:58 Найти цитируемый пост)
Конечно, в одной, а почему нет? В данном случае с одной таблицей работать куда удобнее, чем с несколькими.
может и удобнее, но не более.
Для чего тогда нужна нормализация? Можно вообще все в одну таблицу, все наглядно и красиво, только есть куча проблем с производительностью, уникальностью, увеличением размера БД и т.д.


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
Данкинг
Дата 20.11.2009, 10:41 (ссылка) |  (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Deniz, есть человек, у него есть адрес. Зачем этот адрес разбивать по нескольким таблицам? Как тут выиграет производительность, уникальность и т.п.? Что хорошего, если фамилия в первой таблице, а номер квартиры - в десятой?

Это сообщение отредактировал(а) Данкинг - 20.11.2009, 10:42


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Zloxa
Дата 20.11.2009, 12:11 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 11
Всего: 161



Цитата(Deniz @  20.11.2009,  09:49 Найти цитируемый пост)
Для чего тогда нужна нормализация?

Нормализация нужна для обеспечения согласованности данных.
Куда проще обеспечивать согласованность данных, если один объект(сущность) представлен в системе лишь единожды.
Однако избыточное увлечение нормализацией тоже пагубно. 
Если увлечься нормализаей,  все строки можно было бы представить как отношение лексем(слов), а все лексемы как отношение синтакссических единиц(букв). Тут даже нубу понятно, что наличие целесообразности в том является скорее исключением нежели правилом.

Я думаю следует придерживаться принципа бритвы Окамма - не стоит плодить сущего сверх надобного. Если вы проектируете, например, кадастровую систему и составные части адреса являются объектами этой системы, выделение сущностей город, страна, улица и т.п. вполне может оказаться целесообразным. Однако в большинстве систем адрес - просто некий информативный атрибут, который вполне даже может оказаться не заполненным или же он должен печататься только на конвертах. В этом случае нормализация избыточна. Если нужна достоверность адреса, проверки по КЛАДР при вводе вполне может оказаться достаточно. КЛАДР не так часто модифицируется, чтобы на это можно было нарваться.


Это сообщение отредактировал(а) Zloxa - 20.11.2009, 12:13


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
Deniz
Дата 20.11.2009, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 7
Всего: 44



Цитата(Zloxa @  20.11.2009,  15:11 Найти цитируемый пост)
Нормализация нужна для обеспечения согласованности данных.
Куда проще обеспечивать согласованность данных, если один объект(сущность) представлен в системе лишь единожды.
Однако избыточное увлечение нормализацией тоже пагубно. 
так вроде никто обратного не говорил.
Цитата(Zloxa @  20.11.2009,  15:11 Найти цитируемый пост)
Если увлечься нормализаей,  все строки можно было бы представить как отношение лексем(слов), а все лексемы как отношение синтакссических единиц(букв).
полностью согласен, до тех пор, пока строка хранится в одном поле, как только ее разбивают на несколько слов, и каждое слово хранят в своем поле.
Если бы ТС сказал, что адрес будет хранится в одном поле, тогда можно даже отдельную таблицу не делать, вместе с описанием человека хранить, но
Цитата(lumentek @  19.11.2009,  05:47 Найти цитируемый пост)
Сам адрес этой косвенный показатель, он нужен только для общих сведений.  например при идентификации субъекта этих данных.
если уж он решил разбить адрес на составляющие (поля таблицы), то есть смысл продолжить нормализацию.
Зачем это все нужно ТС я так и не понял, если идентификацией субъекта по адресу будет проходить визуально без поиска по адресу, то вообще весь адрес затолкнуть в одно поле и не мучатся.


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
Данкинг
Дата 20.11.2009, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Цитата(Deniz @  20.11.2009,  13:16 Найти цитируемый пост)
Зачем это все нужно ТС я так и не понял, если идентификацией субъекта по адресу будет проходить визуально без поиска по адресу, то вообще весь адрес затолкнуть в одно поле и не мучатся. 

Если адрес разбит, то при необходимости будет проще выделить некорректные адреса, к примеру, города без улиц или домов.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Deniz
Дата 20.11.2009, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 7
Всего: 44



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


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
former
Дата 24.11.2009, 21:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: нет
Всего: 17



Цитата(lumentek @  19.11.2009,  02:15 Найти цитируемый пост)
Необходимо вносить в базу данных людей одного конкретного региона.
Регион это область.

Похоже, что в данном случае и нормализация не нужна. Можно обойтись древовидной структурой, сформировать которую можно из того же КЛАДРа. Написать конвертер для конкретной области, что бы проще было обновлять.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Общие вопросы по базам данных"
LSD
Zloxa

Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:

  • вопросам по СУБД для которых нет отдельных подфорумов
  • вопросам которые затрагивают несколько разных СУБД (например проблема выбора)
  • инструменты для работы с СУБД
  • вопросы проектирования БД
  • теоретически вопросы о СУБД

Данный форум не предназначен для:

  • вопросов о поиске разлиных БД (если не понимаете чем БД отличается от СУБД то: а) вам не сюда; б) Google в помощь)
  • обсуждения проблем с доступом к СУБД из различных ЯП (для этого есть соответсвующие форумы по каждому ЯП)
  • обсуждения проблем с написание SQL запросов, для этого есть форум Составление SQL-запросов
  • просьб о написании курсовой, реферата и т.п., для этого есть Центр помощи или фриланс биржа
  • объявлений о найме специалистов, для этого есть раздел Объявления о найме специалистов

Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение. ;)


Полезные советы:

При написании сообщения постарайтесь дать теме максимально понятное название. В теме максимально подробно опишите проблему. Если применимо укажите: название базы данных и версии (MySQL 4.1, MS SQL Server 2000 и т.п.); используемых язык программирования; способа доступа (ADO, BDE и т.д.); сообщения об ошибках.

Для вставки кода используйте теги [code=sql] [/code].

Литературу по базам данных можно поискать здесь.

Действия модераторов можно обсудить здесь.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | СУБД, общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0669 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.