Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Объясните, пожалуйста, новичку / 7 сообщений из 7, страница 1 из 1
07.03.2006, 19:32
    #33587655
NP
NP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объясните, пожалуйста, новичку
Объясните, пожалуйста, новичку почему плохо иметь таблицы с большим количеством полей. В реальной жизни встретились БД, где таблицы имеют по 80 и более полей. Может ссылку грамотную подкинете по этой теме.
...
Рейтинг: 0 / 0
07.03.2006, 19:50
    #33587674
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объясните, пожалуйста, новичку
NPпочему плохо иметь таблицы с большим количеством полей.
а с чего ты взял, что это плохо?
это не плохо, и не хорошо, все зависит от конкретной задачи и условий
...
Рейтинг: 0 / 0
08.03.2006, 01:30
    #33587895
Urri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объясните, пожалуйста, новичку
NPОбъясните, пожалуйста, новичку почему плохо иметь таблицы с большим количеством полей. В реальной жизни встретились БД, где таблицы имеют по 80 и более полей. Может ссылку грамотную подкинете по этой теме.Вероятно, новичок заметил, что в таблицах нормализованных БД обычно полей меньше, чем в ненормализованных таблицах. А в каждом учебнике по основам проектирования БД пишут, что ненормализованные таблицы - это плохо.
Ну, во-первых, ненормализованные таблицы - это действительно плохо. БД должна быть как минимум нормализована, а потом - возможно - денормализована, по особым соображениям конкретного случая.
Но в теории нормализации нет никаких указаний, что количество атрибутов в сущности (ну и полей в таблице, как следствие) ни в коем случае не может быть больше 10, 20 или 40. Потому как степень нормализации не имеет количественного выражения (ну разве что формы называются "первая", "вторая" и т.д.). Так что 80 полей может быть хорошо, а может быть и нехорошо.
Тему нормализации обсуждали здесь многократно. В поиск.
...
Рейтинг: 0 / 0
08.03.2006, 09:20
    #33587968
Shultze
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объясните, пожалуйста, новичку
Плохо тем, что, например, в MS SQL вы придете к ограничению в 8060 байт на строку, а это, поверьте, очень быстро наступает, особенно когда поля текстовые. Так что иногда имеет смысл разнести сущности на две таблицы связанные 1:1.
...
Рейтинг: 0 / 0
08.03.2006, 12:08
    #33588036
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объясните, пожалуйста, новичку
ShultzeПлохо тем, что, например, в MS SQL вы придете к ограничению в 8060 байт на строку
Хм. Печально. Но с тем же успехом можно прийти к ограничению например количества таблиц в базе или строк в таблице. В том же MSSQL, если мне не изменяет память, как минимум раньше существовало ограничение на количество таблиц в запросе.

Все-ж таки это отдельные... особые ситуации, и к глобальному принципу "почему плохо" особого отношения не имеют.

ShultzeТак что иногда имеет смысл разнести сущности на две таблицы связанные 1:1.
Ну, собственно разнести так 1:1 иногда имеет смысл и без всяких ограничений. В теории это называется вертикальным партиционированием.
...
Рейтинг: 0 / 0
09.03.2006, 06:31
    #33588603
mir
mir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объясните, пожалуйста, новичку
NPОбъясните, пожалуйста, новичку почему плохо иметь таблицы с большим количеством полей. В реальной жизни встретились БД, где таблицы имеют по 80 и более полей. Может ссылку грамотную подкинете по этой теме.Вам, в принципе, все уже прекрасно объяснили, я только хочу добавить, что в жизни не видел хорошо спроектированной БД, в которой были бы таблицы с таким большим количеством полей. А вот плохо спроектированные с подобными таблицами встречал. Это бывает, скажем, когда вместо нормальной реализации наследования заталкивают в одну таблицу все атрибуты сущностей разных классов. Потом обычно процентов 90 полей в записях пустые (NULL). Поэтому есть у меня все же смутное подозрение, что вы столкнулись с примером нехорошей базы.
...
Рейтинг: 0 / 0
09.03.2006, 11:43
    #33589142
NP
NP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объясните, пожалуйста, новичку
mir NPОбъясните, пожалуйста, новичку почему плохо иметь таблицы с большим количеством полей. В реальной жизни встретились БД, где таблицы имеют по 80 и более полей. Может ссылку грамотную подкинете по этой теме.Вам, в принципе, все уже прекрасно объяснили, я только хочу добавить, что в жизни не видел хорошо спроектированной БД, в которой были бы таблицы с таким большим количеством полей. А вот плохо спроектированные с подобными таблицами встречал. Это бывает, скажем, когда вместо нормальной реализации наследования заталкивают в одну таблицу все атрибуты сущностей разных классов. Потом обычно процентов 90 полей в записях пустые (NULL). Поэтому есть у меня все же смутное подозрение, что вы столкнулись с примером нехорошей базы.

Да вот у меня тоже есть смутное подозрение такое. Пытаюсь его из смутного преобразовать в более ясное и аргументированное. Проблема в этой бд не только с широкими таблицами, к сожалению. Буду разбираться. Спасибо всем.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Объясните, пожалуйста, новичку / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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