Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
3-1120322774
Quattro
2005-07-02 20:46
2005.08.07
Литература о БД


14-1121420388
KSergey
2005-07-15 13:39
2005.08.07
Не отображаются создаваемые папки под произвольным пользователем


6-1114156612
O.O
2005-04-22 11:56
2005.08.07
MAC адрес сетевой платы


4-1118096374
Gopher
2005-06-07 02:19
2005.08.07
команда GetWindowsDir


1-1119562614
Зипп
2005-06-24 01:36
2005.08.07
Насколько эффективно использование Зип-архивов для сокрытия





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский