powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Создание телефонной книги
9 сообщений из 9, страница 1 из 1
Создание телефонной книги
    #33020884
Nerian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет! Такой вопрос, хотел бы написать какую нибудь базку по сотрудникам фирмы, где бы хранил их ФИО, Телефон, НомерКомнаты, ИП-Адресс, ИмяМашины, ИмяОгранизации и т.д.
Как вы думаете стоит ли использовать несколько таблиц или для этой задачи подойдёт одна? Просто есть уже написанная до меня так там всё в одной было... А для web-формы поиска чтобы был список организаций и т.д. использовался group by по полю...
Или всё же лучше сделать так:

=== Users: ===
id - INT NOT NULL AUTO_INCREMENT (сурогатный ключ)
name1 - VARCHAR(25) NOT NULL
name2 - VARCHAR(25) NOT NULL
name3 - VARCHAR(25) NOT NULL
room_num - INT
telphone_num - INT
start_date - DATE
age - INT NOT NULL
firm_id - INT NOT NULL (внешний ключ)
departament_id - INT NOT NULL (внешний ключ)

=== Firms: ===
id - INT NOT NULL AUTO_INCREMENT (сурогатный ключ)
name - VARCHAR(25) NOT NULL

=== Departaments: ===
id - INT NOT NULL AUTO_INCREMENT (сурогатный ключ)
name - VARCHAR(25) NOT NULL

=======
Вопщем как вы думате что лучше использовать в одну таблицу или в несколько, и не возникнит ли каких либо трудностей при приведённом выше варианте БД
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33020894
zass
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изучите проблему нормализации баз данных.
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33021910
KOLO-Pokemon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zassИзучите проблему нормализации баз данных.
И денормализации ...
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33022022
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nerian пишет:
> Всем привет! Такой вопрос, хотел бы написать какую нибудь базку по
> сотрудникам фирмы, где бы хранил их ФИО, Телефон, НомерКомнаты,
> ИП-Адресс, ИмяМашины, ИмяОгранизации и т.д.
> Как вы думаете стоит ли использовать несколько таблиц или для этой
> задачи подойдёт одна?

Для этой задачи подойдет любое готовое решение. Хотя бы MS Outlook,
который присутствует вместе с MS Office практически на любом компе.
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33023394
Nerian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну что Outlook подошёл бы безпорно, если бы у нас вместо CommunigatePro использовался Exchange и вместо The BAT использовался Outlook ;) Но так как начальство не жаждет выделять средства, я думаю это мечта нескоро воплотиться.

Плюс ко всему просто интересно как можно было бы это всё реализовать на php, да и попрактиковаться.

Вот допустим если сделать базу такую как я выше описал, тогда такой вопрос: если я удалю любую фирму, или отдел (ну допустим не подумав что кто то числиться там) то тогда получаеться нарушеться целостность, и запрос select ... from users,fimrs where users.firm_id=firms.id and ... не покажит того кто на самом деле остался без фирмы, тоесть он потеряеться.

Как быть в этой ситуации? Подскажите пожалуйсто, а то такой вопрос меня уже давно мучает.
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33023437
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если Вы сделаете foreign key по полю Код отдела, то база не даст ничего удалить, а сообщит о наличии записей в дочерней таблице.
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33023467
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
age - уж не возраст ли это ? Каждый год поле обновлять будем ? Или лучше сразу напишем дату рождения ?
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33023627
Nerian
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Насчёт возраста я уже исправил :) Просто когда постил наспех все думал.

А насчёт forgen key вроде в mysql он не используеться, тоесть есть но только в целях совместимости с другими бд, но на деле ни чего неделает...
...
Рейтинг: 0 / 0
Создание телефонной книги
    #33026974
olk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы посоветовал не изобретать велосипед а
посмотреть в сторону LDAP - при грамотной настройке и использовании он
вам даст гораздо больше ...
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Создание телефонной книги
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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