powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Помогите новичку пожалуста.
25 сообщений из 58, страница 1 из 3
Помогите новичку пожалуста.
    #35652997
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Я вроде полазил по форуму, но ответа не нашел.. вопрос касается нормализации БД. я очень много почитал в интернете, но все равно никак не пойму как лучше всего сделать, заранее благодарю за ответ.
Ситуация: делаю диплом, тема весьма необычная: асу агентством ритуальных услуг...
вобщем есть бд, в ней содержаться такие данные как названия гробов, урн, памятников, кладбищ, храмов, автомобилей и многое другое... собственно тут я и начал путаться с нормализацией... так же существуют таблицы "отпевание" "панихида" в которые заносятся впоследствии храм в котором все это проводилось, дата, время, допинфо...
вот собственно теперь осталось раскидать таблицы... следует ли мне создать одну таблицу, в которой будут храниться все названия этих гробов, памятников и тд.... или же можно создать отдельные таблицы для каждой составляющей... отдельная таблица с названиями гробов, отдельная на памятники и так далее...
Спасибо
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653021
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Такие вот у меня соображения.

Все в одну таблицу, в которой есть битовое поле "Товар/Услуга". Собственно оно не очень важно, просто при написании клиента можно будет фильтровать эту таблицу при вызове справочника. Пользователю будет удобно отдельно выбирать из справочников товаров и справочника услуг.


К ней подцепляем таблицу детализации товаров/услуг в отношении один-ко-многим.

Впрочем, тут возможны варианты.
Если атрибуты у товаров и услуг сильно различаются, то можно иметь две разные таблицы детализации.

Можно, конечно, и товары и услуги разнести по двум разным таблицам.

Плюс одной таблицы перед двумя в том, что придется писать в два раза меньше однотипных запросов, хранимок и, при необходимости, тригеров.

В общем-то вариант с 2 таблицами, 3-мя или 4-мя выбирается после анализа атрибутов.

Не иключено, что удобно будет разделить не на "товар/услуга", а на что то вроде "товар типа 1/товар типа2/услуга типа 1/услуга типа 2".
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653029
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
то есть по сути это одна таблица в который есть все товары: от катафалков до названий кладбищ и вторая с видами услуг и действий: от кремирования до проведения панихиды?
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653047
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Нет. Название кладбища - это один из возможных атрибутов заказа - основное место предоставления комплекса товаров и услуг. Это мето, наверное, может быть и не кладбищем, а например церковью. Кто-то может заказать просто панихиду в церкви или организацию поминок.

Впрочем, это может быть и атрибутом услуги .

Даже скорее так оно и будет.

Катафалк - это услуга. Он же не продается заказчику, а дается в во временную эксплуатацию.

Так же услугами являются кремирование, панихида, уход за могилой.
Товарами являются: гробы, венки, ленты, цветы, памятники, оградки.

Товары и услуг могут быть объеденны в одну таблицу, а могут быть разнесены по разным. Преимущество двух таблиц - нет поля-признака, о преимуществе одной таблицы я уже писал.

Ведь и товары и услуги основной таблицы состоят только из двух полей: идентификатора (сурогатного ключа) и названия, которые характеризуют группы товаров или услуг
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653053
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хм... согласен... таким образом будет легко систематизировать весь процесс.. но есть некие услуги которые обладают уникальными полями... например организация питания... в ней нужно указать количество человек, чтобы бронировать столы. правильно ли я понял что это будет таблица ссылющаяся на ключ услуги\товара(организация питания и название кафе) и поля с количеством человек и датой.... хотя дата также используется в других таблицах... снова запутался.. дату выносить в отдельную таблицу чтоли? =(
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653088
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Ну что ж задача несколько усложняется. Что бы потом долго и мучительно не переделывать структуру базы сразу принимаем, что каждый товар или услуга имеет уникальные атрибуты.


Ядро структуры, пожалуй, будет иметь примерно такой вид

ТипыТоваровУслуг
{
КодТипыТоваровУслуг
Признак
Название
}

Атрибуты
{
КодТипыТоваровУслуг
КодАтрибута
Название атрибута
Значение атрибута
КодЕдиницаИзмерения
ЦенаЗаЕдиницу
КодМестоПредоставления
}

ВидыТоваровУслуг
{
КодТипыТоваровУслуг
КодВидыТоваровУслуг
Название
}

Заказы {
КодЗаказа
Номер документа
Дата документа
Заказчик
}

Количество
{
КодЗаказа
КодВидыТоваровУслуг
КодАтрибута
Количество
}

МестоПредоставления
{
КодМестоПредоставления
Название
}

ЕдиницаИзмерения
{
КодЕдиницаИзмерения
Название
}
==========
Легче написать, структуру, чем объяснить :)
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653097
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Ошибочка проскользнула.
Первую строку читать так

Ну что ж задача несколько усложняется. Что бы потом долго и мучительно не переделывать структуру базы сразу принимаем, что каждый тип товара или услуги имеет уникальные атрибуты.
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653106
Cheprasov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я бы не разделял товар или услугу, все в одну таблицу 'т/у'. далее ввел бы поняте типа для записей в таблице "т/у" т.е для товаров или услуг, типы хранить следует в отдельной таблице "тип". Далее можно таблице "тип" сопоставить список характеристик - еще таблица "хар". Ввести понятие потребителя 'Потреб', и понятие "заказ" - 3 таблицы которае все это соединият
(Заказ-потребитель-услуга/товар-значение характеритики услуги/товара)
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653109
Фотография Mr Marmelad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллега - позабодьтесь ещё о прямом оповещении - хранении данных "заказчика" и его "заказов" - обычно это родственники и близкие - найдите возможность хранить и оповещать о "новых услугах" - например послать открытку соболезнования приглашение на панихиду 9 дней 40 дней год...
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653115
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Mr Marmelad,
У человека просто диплом. Хотя в реальной базе это может быть полезным
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653122
Cheprasov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
ТипыТоваровУслуг
{
КодТипыТоваровУслуг
Признак
Название
}

{
КодТипыТоваровУслуг
КодВидыТоваровУслуг
Название
}
Думаю можно в одну таблицу

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Атрибуты
{
КодТипыТоваровУслуг
КодАтрибута
Название атрибута
Значение атрибута
КодЕдиницаИзмерения 
ЦенаЗаЕдиницу
КодМестоПредоставления
}

Будут зависеть от заказа
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653123
Фотография Mr Marmelad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OFF

Тема очень интересная - мне пондравилось... начал примерять "под себя" как можно полежать - и так :|- и так .\= и так `/\/....
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653128
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
хм.... вобщем советовался с одногрупником, в итоге получилось так...
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653131
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
суть в том что у нас есть проход, на протяжении которого составляется заказ... с клиента спрашиваются все данные, предлагаются варианты, и в итоге в бд заноситься информация по:
данные клиента
данные объекта(трупика)
что делаем(кремирование, похороны)
что выбираем(гроб урна памятник кладбище)
что делаем(панихида отпевание питание вывоз трупа)
собственно каждый этот проход должен храниться в бд.....
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653136
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забыл связку между Person и Главной
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653138
Фотография Mr Marmelad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И заказа нет.... Хм.. Есть пасспорт, место, описание - масса всего ... а где деньги, Зин?
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653141
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
про деньги отдельный разговор... щас речь идет об общей нормализации таблиц... просто первоначально я создавал отдельные таблицы на гробы, урны и так далее
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653142
Фотография Mr Marmelad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ой нет - он вреде бы есть... Главный ... но его как бы и нет.
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653143
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
что значит нет?....
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653146
Фотография Mr Marmelad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Этом раскладе коллега - у Вас смешалось в кучу кони люди. Я не смею Вас критиковать - не поймите меня превратно.. Смотрите - заказ надо выдавать заказчику. У Заказчика есть свои атрибуты (которых я не нашёл - вот что меня смутило) В Заказе будут какие то товары и услуги. Линии заказов. Со своими атрибутами. Которые Вам любезно раскрыли наши коллеги. Потом это всё сложится и распечатается "к оплате" А что у Вас будет?
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653148
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Cheprasov,

1.
В одну нельзя.

Тип товара - Гроб.

Виды товара "Гроб"

Красный
Белый
Черный
================
2. Никогда. Собственно сам заказ состоит из заказчика и номера документа, а уж к номеру заказа подвязывается таблица Количество один-ко многим.
Количество связано с видами товаров/услуг и атрибутами

Полная расшифровка товаров услуг по одному заказу (без тривиального соединения с местом и единицей иззмерения) выглядит примерно так

select * from Количество
join ВидыТоваровУслуг on Количество.КодВидыТоваровУслуг=ВидыТоваровУслуг.КодВидыТоваровУслуг
join Атрибуты on Количество.КодАтрибута=Атрибуты.КодАтрибута
join ТипыТоваровУслуг on Атрибуты.КодТипыТоваровУслуг=ТипыТоваровУслуг.КодТипыТоваровУслуг
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653149
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
where КодЗаказа = N
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653154
Фотография Mr Marmelad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ваша Табличка ЧЕЛОВЕК напоминает мне сокраментальную фразу: "А БЕЗ Покойника?" © (по трёшке хоть это и унизит наше достоинство)
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653156
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Кириллкопро деньги отдельный разговор... щас речь идет об общей нормализации таблиц... просто первоначально я создавал отдельные таблицы на гробы, урны и так далее
Деньги - это самое главное! Ведь все это создается ради учета денег.
Где и как хранить цену - важный вопрос.

Ведь бывают варианты, когда манагер выдает записывает что надо и задумчиво глядя в потолок говорит:
- Мы это сделаем за NNN руб.

Тогда пофиг цены и расценки. Между прочим, нормальная практика у небольших фирм по ремонту квартир.
Материалы идут по ценам, а работы, хоть и детализируются, но все берется одной суммой.
...
Рейтинг: 0 / 0
Помогите новичку пожалуста.
    #35653157
Кириллко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mr Marmelad. Атрибуты заказчика будут добавлены. что касается выдача заказа клиенту то это будет отдельная выборка из бд... данная система является в первую очередь как база данных существующих заказов, возможность их просмотра и редактирования сотрудниками
...
Рейтинг: 0 / 0
25 сообщений из 58, страница 1 из 3
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Помогите новичку пожалуста.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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