powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / КЛАССИФИКАТОР должен быть доступен только админу!!!
3 сообщений из 3, страница 1 из 1
КЛАССИФИКАТОР должен быть доступен только админу!!!
    #32239101
Фотография Groove
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, есть еще вопрос про организацию данных:

Есть таблица группы товаров (посетитель не может править)
Код: plaintext
1.
IDGroup//PRIMARY KEY
GroupName


Есть таблица товаров (посетитель не может править)
Код: plaintext
1.
2.
IDGoods//PRIMARY KEY
IDGroup
GoodsName


Есть таблица объявлений (посетитель может добавлять новые)
Код: plaintext
1.
2.
IDSales//PRIMARY KEY
IDGoods
Price


Смысл такой:
есть сайт с объявлениями
есть классификатор товаров, для удобства поиска и получения статистических данных о товарах

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

Проблема в том, что иногда товара или группы нет в классификаторе,
но можно для каждой группы товаров ввести товар с названием например "...прочее"

И если посетитель не нашел группы, то добавить объявление в группу прочее

Но тогда возникает проблема хранения и отображения наименования групп и наименования самих товаров

Модернизируя немного таблицу с объявлениями
Код: plaintext
1.
2.
3.
4.
IDSales//PRIMARY KEY
IDGoods
Price
GrName
GdName

можно сохранить эти данные в БД

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
ПРИМЕР
Группы
 1    Группа1
 2    Группа2

Товары
 1    1   Товар1
 2    1   Товар2
 3    2   Товар3

как имея такие таблицы добавить объявление о продаже товара Товар4 из Группы4?

В таблицу Группы добавляем запись
 1    Группа1
 2    Группа2
 3    ПРОЧЕЕ

В таблицу Товары добавляем запись
 1    1   Товар1
 2    1   Товар2
 3    2   Товар3
 4    3   прочее

В таблицу объявлений добавляем запись
 1     1      1000    Группа4   Товар4

Затем с некоторой периодичностью проверяем БД и вносим коррективы в классификатор.



Но как получить и самое главное использовать вьюху составленную из трех таблиц
группы, товары и объявления???

или может быть вообще не надо делать внешний ключ в таблице объявлений, а просто писать в текстовом виде? но тогда весь смысл использования БД сводится к нулю.

Заранее благодарен за Ваше внимание к моей проблеме...
...
Рейтинг: 0 / 0
КЛАССИФИКАТОР должен быть доступен только админу!!!
    #32239738
Репликант
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Groove:
Проблема в том, что иногда товара или группы нет в классификаторе,
но можно для каждой группы товаров ввести товар с названием например "...прочее"


Необязательно вводить, можно просто создать такую специальный товар или группу товаров с id = 0. Группа "...прочее" еще понятно. Но вот что такое товар - "...прочее"?
Также непонятно, если вы создаете именно аукцион (а не магазин , где покупатель может выбирать только из предложенного списка товаров), то зачем создавать какие предопределенные товары? Группы еще можно понять - для классификации (типа: "компьютеры", "сотовые телефоны", "мебель" и т.д действительно для удобства тех, кто просматривает или выбирает лоты) и их можно определить несколько десятков штук плюс какие-то подгруппы (типа сотовые телефоны: "GSM", "CDMA", "DAMPS" и т.д), т.е охватив тем самым все возможные и даже невозможные группы товаров. Но сами товары-то зачем?

.. как имея такие таблицы добавить объявление о продаже товара Товар4 из Группы4?
...
Затем с некоторой периодичностью проверяем БД и вносим коррективы в классификатор.


Обычная БД (без репликации), к-рая периодически требует какой-то проверки для поддержки целостности - это скорее всего результат ошибочного проектирования. Нужна вам такая БД?

Но как получить и самое главное использовать вьюху составленную из трех таблиц
группы, товары и объявления???


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

.. или может быть вообще не надо делать внешний ключ в таблице объявлений, а просто писать в текстовом виде? но тогда весь смысл использования БД сводится к нулю.

Сложно сказать, т.к есть вопросы (выше) к вашей предметной области
...
Рейтинг: 0 / 0
КЛАССИФИКАТОР должен быть доступен только админу!!!
    #32240346
Фотография Groove
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый Репликант !\r
Это будет БД автомобилей и не только (в дальнейшем).\r
Просто для абстракции марки авто я назвал группами, а модели - товарами.\r
И эта ветка является продолжением этой темы.\r
\r
Так что предметная область - АВТО.\r
\r
Извините, что не ясно сформулировал вопрос, подумал что нужно для чистоты проектирования соблюсти некий уровень абстракции...
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / КЛАССИФИКАТОР должен быть доступен только админу!!!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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