Работаю я anykey-щиком на государственной службе и для облегчения работы себе и приобретения начальных навыков в клиент-сервер решил спроектировать базу данных подведомственного оборудования, пользователей и сетевых настроек. В этом и прошу Вашей помощи.
Итак, в базе необходимо хранить список пользователей, список комнат, тип оборудования, его инвентарный номер и статус, а также IP-адресацию компьютеров. Пока пришел к такой структуре таблиц:
Код: Выделить всё
CREATE TABLE REFWORKERS (
ID INTEGER NOT NULL,
SURNAME VARCHAR(50)
);
Код: Выделить всё
CREATE TABLE REFSTATUS (
ID INTEGER NOT NULL,
DESCRIPTION VARCHAR(20) NOT NULL
);
Код: Выделить всё
CREATE TABLE REFROOMS (
ID INTEGER NOT NULL,
NUMBER VARCHAR(15)
);
Код: Выделить всё
CREATE TABLE REFEQUIPMENTTYPE (
ID INTEGER NOT NULL,
DESCRIPTION VARCHAR(150)
);
Код: Выделить всё
CREATE TABLE EQUIPMENT (
ID INTEGER NOT NULL,
INVENTARNUMBER VARCHAR(10) NOT NULL,
TYPEEQ INTEGER NOT NULL,
DESCRIPTION VARCHAR(100) NOT NULL,
WORKER INTEGER NOT NULL,
PLACE INTEGER NOT NULL,
STATUS INTEGER NOT NULL
);
ALTER TABLE EQUIPMENT ADD CONSTRAINT FKPLACE FOREIGN KEY (PLACE) REFERENCES REFROOMS (ID);
ALTER TABLE EQUIPMENT ADD CONSTRAINT FKSTATUS FOREIGN KEY (STATUS) REFERENCES REFSTATUS (ID);
ALTER TABLE EQUIPMENT ADD CONSTRAINT FKTYPE FOREIGN KEY (TYPEEQ) REFERENCES REFEQUIPMENTTYPE (ID);
ALTER TABLE EQUIPMENT ADD CONSTRAINT FKWORKER FOREIGN KEY (WORKER) REFERENCES REFWORKERS (ID);
Поле INVENTARNUMBER - инвентарный номер
Поле DESCRIPTION - описание(Samsung SyncMaster 753DFX, HP LaserJet 1320n и т.п)
Пока думаю в таблице EQUIPMENT хранить все подряд оборудование(т.е. не делать отдельных таблиц под принтеры, ксероксы, мониторы)
База будет крутиться под FireBird SuperServer на Windows 2k/XP, максимальное количество пользователей – 20 человек(в далекой перспективе), на данный момент - 2.
Вопросы таковы:
--насколько я хорошо/плохо придумал структуру таблиц
-- как лучше хранить IP-адресацию, а то пихать ее в таблицу EQUIPMENT пока не хочется ибо чистый ксерокс(не МФУ) при всем желании не имеет IP-адреса.
Четкой привязки IP-адреса нет, может меняться как пользователь(уволился), так и компьютер(сгорел, уехал на ремонт)
Заранее всем спасибо за ответы и просьба сильно не ругаться