powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / БД для учета комплектующих.
11 сообщений из 11, страница 1 из 1
БД для учета комплектующих.
    #35990293
nikitad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть следующие таблицы:
configurations:
id

name

comment_text

device_videocard

id

config_id
<разные атрибуты, специфичные для каждго устройства>

device_<много разных>
...

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

В качестве временного косыля сделал так:

status_videocard_ordered:

id

videocard_id
<разные атрибуты, специфичные для каждго состояния>

И вот так вот для каждого состояния и устройства. Что-то мне подсказыает, что можно сделать удобнее.
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35990311
monsenior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скорее так:
conf
(
ID,
description
)
detconf
(
ID,
IDconf,
IDDevice
)
device
(
ID,
Type,
Price,
... некие общие поля для всех девайсов
)
device_video
(
ID,
IDDevice,
... поля специфичные для видео карт
)


P.S. - простите меня глупого
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35990315
nikitad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Получается, что Конфигурация и Устройство имеют отношение M:N - не есть гуд.
Каждое устройство в данный момент времени может принадлежить только одно конфигурации.
Каждое устройство в данный момент времени может находиться только в одном состоянии.
Опять-таки непонятно, как решить проблему с сосояниями.
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35990576
monsenior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikitadПолучается, что Конфигурация и Устройство имеют отношение M:N - не есть гуд.
Каждое устройство в данный момент времени может принадлежить только одно конфигурации.
Каждое устройство в данный момент времени может находиться только в одном состоянии.
Опять-таки непонятно, как решить проблему с сосояниями.

тогда так:
conf
(
ID,
description
)
detconf
(
ID,
IDconf,
IDDevice
)
device
(
ID,
IDStatus,
IDSubStatus,
Type,
Price,
... некие общие поля для всех девайсов
)
status - описание состояний
(
ID,
Desc
)
substatus - описание атрибутов
(
ID,
IDStatus,
SubStatus,
Desc
)
device_video - и подобные таблицы нужны только если нужна сппецифическая инфа по такому типу устройств
(
ID,
IDDevice,
... поля специфичные для видео карт
)
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35991724
nosov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть софт который сам определяет что у ПК внутри
тип -- модель -- количество -- производитель и т.д.
этот софт применяется при инвентаризации больших LAN
при этом формируется отчет который можно распечатать
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35992950
nikitad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nosovесть софт который сам определяет что у ПК внутри
тип -- модель -- количество -- производитель и т.д.
этот софт применяется при инвентаризации больших LAN
при этом формируется отчет который можно распечатать

Нужно не просто распечатать - нужно наблюдать состояние машинного парка в динамике, к тому же, если железка лежит на полке - он не учтется.
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35992982
nikitad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
monsenior,

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

Вот пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE IF NOT EXISTS status_videocard_ordered (
     id INTEGER NOT NULL AUTO_INCREMENT,
     videocard_id INTEGER UNIQUE,
     order_date DATE NOT NULL,
     price FLOAT NOT NULL,
     comment TEXT,
     PRIMARY KEY (id),
     FOREIGN KEY (videocard_id) REFERENCES device_videocard (id) ON DELETE CASCADE ON UPDATE CASCADE)
Engine=InnoDB;

Статус указывает, что заказано устройство типа видеокарта такого-то числа по такой-то цене.
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35993161
nosov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторнужно наблюдать состояние машинного парка в динамике, к тому же, если железка лежит на полке - он не учтется.запускайте программу инвентаризации LAN еженедельно -- вот и будет вам динамика.
если железка лежит на полке это плохо -- выброшенные деньги получаюца (имхо)
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35995373
monsenior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikitadmonsenior,

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

Вот пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE IF NOT EXISTS status_videocard_ordered (
     id INTEGER NOT NULL AUTO_INCREMENT,
     videocard_id INTEGER UNIQUE,
     order_date DATE NOT NULL,
     price FLOAT NOT NULL,
     comment TEXT,
     PRIMARY KEY (id),
     FOREIGN KEY (videocard_id) REFERENCES device_videocard (id) ON DELETE CASCADE ON UPDATE CASCADE)
Engine=InnoDB;

Статус указывает, что заказано устройство типа видеокарта такого-то числа по такой-то цене.
и в чем проблема?
премените наследование для таблицы статуса
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35995376
monsenior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дефакто в статус/субстатус в предложенной мной схеме может быть абсолютно любым.
Да и количество атрибутов есть число относительно постоянное!
P.S. - простите меня глупого
...
Рейтинг: 0 / 0
БД для учета комплектующих.
    #35998748
nikitad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nosov,

Это не ко мне.

автор
Дефакто в статус/субстатус в предложенной мной схеме может быть абсолютно любым.
Да и количество атрибутов есть число относительно постоянное!

Я правильно понял - свои атрибуты следует подставлять вместо subststus?
Код: plaintext
1.
2.
3.
4.
5.
6.
substatus - описание атрибутов
(
ID,
IDStatus,
SubStatus,
Desc
)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / БД для учета комплектующих.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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