powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Прошу советов по структуре базы данных.
7 сообщений из 7, страница 1 из 1
Прошу советов по структуре базы данных.
    #39074082
raziel.kdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

Для "рисования" я использовал MySQL WorkBench(приложил файл WB, если он у вас есть)
ссылка на изображение (60 кб)

Суть:
Магазин, Пользователи регистрируют компанию - "Campaign". Нужно хранить соответственно всё о компании и о продуктах которые они продают - "Products"
Вопросы.
1. Есть необходимость предоставить пользователям rich text field (там могут быть и картинки и видео и вообще всё что угодно) Какое поле для этого выбрать? как хранить?

2. Как хранить сеты картинок? Я думал о таблице которая сама на себя указывает. т.е. есть праймари кей(пк) и есть форейн кей(фк) который указывает на пк:
PK FK
1 -1
2 1
3 1
Дальше пишем в нужное место пк и при необходимости достаём всё где фк = пк
Может есть более простые варианты хранить сеты картинок?

Ну и если видите, что я совсем фигню творю тоже скажите. Спасибо!
...
Рейтинг: 0 / 0
Прошу советов по структуре базы данных.
    #39074157
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) продукты независимы от компаний- хранить их нужно отдельно, описывая все премудрости каждого продукта (если нужно).
2) нужна таблица связки продуктов и компаний. Сейчас у вас получилось, что с одним продуктом может работать только одна компания.
3) Не понял почему в Product есть cost и price-не знаю в чем отличие. В любом случае цена меняется -ее нужно в отдельной таблице хранить с привязкой ко времени.
4) если картинок (а тем более видео) много и они большие- лучше хранить их на диске как файл, а в базе иметь ссылку эти на файлы. Я так понял в Assets вы попытались это изобразить.
5) Vendor и Designer не знаю что такое, поэтому не могу ничего сказать.
...
Рейтинг: 0 / 0
Прошу советов по структуре базы данных.
    #39074182
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
raziel.kdm1. Есть необходимость предоставить пользователям rich text field (там могут быть и картинки и видео и вообще всё что угодно) Какое поле для этого выбрать? как хранить?

У разных СУБД разные механизмы для этого - спросите лучше в форуме по Вашей СУБД.


raziel.kdm2. Как хранить сеты картинок? Я думал о таблице которая сама на себя указывает. т.е. есть праймари кей(пк) и есть форейн кей(фк) который указывает на пк:
PK FK
1 -1
2 1
3 1
Дальше пишем в нужное место пк и при необходимости достаём всё где фк = пк
Может есть более простые варианты хранить сеты картинок?

(как понимаю, Вы описываете таблицу картинок).
У этой реализации есть проблема - как минимум одна картинка (из записи ПК=ФК) жестко "зашита" в сет, ее сложно удалять и сложно заменять.
Мне кажется, лучше все-таки делать 3 таблицы - "Сет", "Картинка", "КартинкаВходитВСет" (связующая). Тогда процедуры "добавить картинку в Сет", "удалить картинку из Сета" - будут вполне универсальны, там не надо будет обрабатывать специальные случаи "картинка является корнем сета".
...
Рейтинг: 0 / 0
Прошу советов по структуре базы данных.
    #39074859
raziel.kdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за советы!

Serguei,
1. Сайт предоставляет торговую площадку для продавцов. т.е. campaign это магазин и товары у каждого свои.
2. см. выше
3. Кост это себестоимость единицы, а прайс это цена для пользователя за еденицу.
4. Да. Планировал хранить в таблице путь до файла из какого-то заранее определенного места(file_path).
+ хранить ещё внешне, чтобы если что доставать оттуда (external_id)
5. Это лица продавца которые имеют доступ к редактированию информации о продукте\магазине
Спасибо за отзыв. С ценой действительно отличная идея!

Кот Матроскин,
По СУБД пока не понятно, клиент склоняется к MySQL. А я в БД(различия, плюсы, минусы) не понимаю, так что советы давать им не могу.

Кот МатроскинМне кажется, лучше все-таки делать 3 таблицы - "Сет", "Картинка", "КартинкаВходитВСет" (связующая)
Т.е. по сути Many to Many отношения? Универсальнее. Реализация чуть сложнее.
Спасибо за совет, попробую представить)
...
Рейтинг: 0 / 0
Прошу советов по структуре базы данных.
    #39074907
raziel.kdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Получилось такое(56кбайт)

Попросили убрать Вендоров/Дезайнеров и оставить только их емейлы.
Убрал Отдельную таблицу для Типов продуктов в Продукт.
Воспользовался советами.

Может кто-нибудь ещё чего углядит нехорошее =)
...
Рейтинг: 0 / 0
Прошу советов по структуре базы данных.
    #39075070
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
raziel.kdm
Попросили убрать Вендоров/Дезайнеров и оставить только их емейлы.
Убрал Отдельную таблицу для Типов продуктов в Продукт.
Воспользовался советами.

Может кто-нибудь ещё чего углядит нехорошее =)

По прежнему плохо. Вы не восприняли советов. Такое впечатление что диаграмму вы делали с закрытыми глазами- куда ткнули, то и соединили.
Читайте внимательнее что вам писали.
...
Рейтинг: 0 / 0
Прошу советов по структуре базы данных.
    #39076148
raziel.kdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Serguei, Я не понял, можете подробнее?
Вы предлагаете сделать many to many отношения между магазином и продуктами?
Цену я выделил отдельно, храню с датой(т.е. дата тут это момент с которого указанная цена для товара действует, можем хранить много дат для товара, историю, а брать ту которая самая близкая к нужной)
По поводу картинок, предлагался какой-то другой вариант? Без "Sets"? Напрямую кампании с ассетами?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Прошу советов по структуре базы данных.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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