Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];
ВнизОрганизация БД Найти похожие ветки
← →
_Max © (2005-06-27 11:45) [0]Возник вопрос.
По производительности какая организация БД более корректна?
Есть 3 поля:
1.Наименовании Организации
2.Фио директора
3.телефон директора
Есть ли смысл в разбитии на 2 таблицы :
Организация
1.Maincode
2.Наименование организации
Начальник
1.MainCode
2.ФИО
3.Телефон
select * from table1, table2
where table1.maincode = table2.maincode
Или правильней сделать одну таблицу?
1.Maincode
2.Наименование организации
3.ФИО начальника
4.Телефон начальника
select * from table.
Записей примерно 10 - 15 тысяч.
← →
Anatoly Podgoretsky © (2005-06-27 11:47) [1]Сколько директоров в одной организации?
← →
_Max © (2005-06-27 11:50) [2]Директор один однозначно.
Так что связь даже не один-ко-многим.
← →
-=XP=- © (2005-06-27 11:50) [3]Если "начальник" один - то и таблица одна.
Несколько начальников - тогда и таблиц несколько. Причем не две, а уже три - в третьей должность начальника хранить, типа "Директор", "Бухгалтер", "Начальник отдела кадров", "Главный менеджер" и пр.
По производительности всегда "впереди" будет запрос, извлекающий данные из одной таблицы.
← →
Sergey13 © (2005-06-27 11:53) [4]> какая организация БД более корректна?
А что за БД? Для телефонного справочника и одной достаточно. Для БД предприятия и 10 мало.
← →
_Max © (2005-06-27 11:54) [5]To -=XP=-
Ясно, а вообще правильно, если в моей таблицы много полей? 30-50.
Если в каком то поле повторяются записи, то я стараюсь делать и з этого поля "справочник" и заменяю это поле уже на числовое.
← →
Zacho © (2005-06-27 11:57) [6]2 _Max © :
Почитай что-нибудь про нормализацию.
← →
_Max © (2005-06-27 11:57) [7]To Sergey13
БД - информация по предприятиям. Начальники, главбухи, юристы, телефоны, адреса, + много служебных полей. В конечном итоге много получается - штук 30. Моё решение было разбить на много таблиц с малым набором полей, чем была бы одна, но с большим количеством строчных полей.
Как ответ на мой вопрос - теперь организую "всё" в одной, (кроме справочников)
← →
_Max © (2005-06-27 11:58) [8]To Zacho
Есть интересные ссылки ?
← →
-=XP=- © (2005-06-27 12:02) [9]Ясно, а вообще правильно, если в моей таблицы много полей? 30-50.
Какая разница? Если надо - значит правильно. Хоть 100 полей, хоть 200. Вопрос только в критериях "надо" и "как". Советую Вам почитать об организации структуры БД - первая, вторая, третья нормальные формы, денормализация. Выполните все в соответствии с рекомендациями - и будет Вам "правильная" БД.
← →
Sergey13 © (2005-06-27 12:04) [10]2 [7] _Max © (27.06.05 11:57)
>Моё решение было разбить на много таблиц с малым набором полей, чем была бы одна, но с большим количеством строчных полей.
Много-мало - это не тот подход. Если надо - то и 200 можно.
← →
-=XP=- © (2005-06-27 12:05) [11]http://www.sql.ru
← →
Anatoly Podgoretsky © (2005-06-27 12:11) [12]_Max © (27.06.05 11:57) [7]
Количество полей не самоцель.
← →
Zacho © (2005-06-27 12:15) [13]_Max © (27.06.05 11:58) [8]
Ссылок не знаю, а вот постоянно "рекламируемый" здесь мной классический учебник по РСУБД назвать могу:
К.Дж.Дейт "Введение в системы баз данных".
← →
Seg (2005-06-27 17:41) [14]На вскидку получается 6 таблиц:
таблица 1 для хранения реквизитов организации
таблица 2 для хранения должностей и их реквизитов (может быть несколько таблиц)
таблица 3 для хранения реквизитов сотрудников
таблица 4 для хранения номеров телефонов
таблица 5 для связки реквизитов организации, должностей и сотрудников
таблица 6 для связки таблицы 5 со списком номеров телефонов.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.08.07;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.063 c