В проектируемой базе данных реализовано 5 таблиц. Ниже для каждой таблицы приведены описание, обоснование полей, ограничения на входную информацию, необходимые маски ввода, используемые подстановки. Все примеры заполненных таблиц приведены в приложении В.
Таблица «Сотрудники» (таблица 6.2.1):
1. #КС
-Ключ: первичный ключ;
-Счетчик;
-Длинное целое[3];
-Совпадение не допускаются, так как это первичный ключ, он считает записи в таблице.
2. ФИО
- Текстовое[50];
- Обязательное поле, так как название предприятия – это главная особенность, по которой можно различать сотрудников;
- Пустых строк нет, так как не может быть предприятие без названия;
- Совпадения допускаются, так как у разных сотрудников могут быть одинаковые ФИО;
3. Адрес
- Текстовое[25];
- Обязательное поле, так как у каждого сотрудника есть свой адрес;
-Совпадения допускаются, так как разные сотрудники могут проживать по одному адресу;
4. Телефон
-Текстовое[7];
-Поле не обязательное, так как сотрудник может не иметь телефона;
|
|
-Совпадения допускаются, так как разные сотрудники могут иметь один телефон;
5. Отдел
-Тип длинное целое[2];
-Обязательное поле, так как каждый сотрудник работает в отделе;
-Совпадения допускаются, так как несколько сотрудников работают в одном отделе;
-Подстановка: из таблицы «Отдел», поле «#КО»;
-Внешний ключ.
6. Должность
-Тип длинное целое[2];
-Обязательное поле, так как каждый сотрудник должен иметь свою должность;
-Совпадения допускаются, так как несколько сотрудников могут иметь одну должность;
-Подстановка: из таблицы «Должности», поле «#КД»;
-Внешний ключ.
Таблица 6.2.1 «Сотрудники»
Таблица «Задания» (таблица 6.2.2):
1. #КЗ
-Ключ: первичный ключ;
-Счетчик;
-Длинное целое[3];
-Совпадение не допускаются, так как это первичный ключ, он считает записи в таблице.
2. Задание
- Текстовое[50];
- Обязательное поле, так как это основное поле таблицы;
- Пустых строк нет, так как задание должно иметь текст;
- Совпадения не допускаются, так как записи о двух одинаковых заданиях не нужны.
Таблица 6.2.2 «Задания»
Таблица «Отдел» (таблица 6.2.3):
1. #КО
-Ключ: первичный ключ;
-Счетчик;
-Длинное целое[3];
-Совпадение не допускаются, так как это первичный ключ, он считает записи в таблице.
2. Участок
- Текстовое[3];
- Обязательное поле, так как участок должен иметь название;
- Совпадения не допускаются, так как разные участки должны иметь разные имена.
3. Цех
- Текстовый[3];
- Обязательное поле, так как цех должен иметь название
- Совпадения не допускаются, так как разные цеха должны иметь разные названия.
Таблица 6.2.3 «Отдел»
|
|
Таблица «Должности» (таблица 6.2.4):
1. #КД
-Ключ: первичный ключ;
-Счетчик;
-Длинное целое[3];
-Совпадение не допускаются, так как это первичный ключ, он считает записи в таблице.
2. Должность
- Текстовое[20];
- Обязательное поле, так как это основное поле таблицы;
- Пустых строк нет, так как поле не может иметь пустое название;
- Совпадения не допускаются, так как разные должности должны иметь разные названия.
Таблица 6.2.4 «Изделие»
Таблица «О заданиях» (таблица 6.2.5):
1. Сотрудник
-Тип длинное целое[2];
-Обязательное поле, так как каждый задание должно выполняться сотрудником;
-Совпадения допускаются, так как несколько сотрудников могут выполнять одно задание;
-Подстановка: из таблицы «Сотрудники», поле «#КС»;
-Внешний ключ.
2. Задание
-Тип длинное целое[2];
-Обязательное поле, так как каждый сотрудник должен выполнять задание;
-Совпадения допускаются, так как несколько сотрудников могут выполнять одно задание;
-Подстановка: из таблицы «Задания», поле «#КЗ»;
-Внешний ключ.
3. Дата выдачи
-Тип дата[10];
- Обязательное поле, так как задание должно иметь дату выдачи;
-Совпадения допускаются, так как разные задания могут выдаваться в один день;
- Маска: 00.00.0000;
-Значение по умолчанию =Date();
- Условие на значения =Date() так как задание должно иметь текущую дату выдачи.
4. Дата выполнения
-Тип дата[10];
- Не обязательное поле, так как задание может выдаваться без срока выполнения;
-Совпадения допускаются, так как различные задания могут иметь один срок выполнения;
- Маска: 00.00.0000;
- Значение по умолчанию =Date()
- Условие на значения >=Date()and>(дата выдачи), так как задание не может быть выполнено раньше, чем выдано.
5. Оценка
-Тип длинное целое[1];
-Поле не обязательное, так как задание может быть не выполнено на текущий момент;
-Совпадения допускаются, так как задания могут выполняться на одну оценку;
-Подстановка: используется фиксированный набор значений;
Таблица 6.2.5 «О заданиях»