Средства поддержания целостности — КиберПедия


Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Средства поддержания целостности



Для реализации целостности необходимо создать таблицы со следующими параметрами:

1. Таблица: Покупатели.

Содержит поля:

· ID. Идентификатор покупателя, устанавливаем автогенерацию, без NULL значений. Тип данных – int,

· Фамилия. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar(20).

· Имя. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar(20).

· Отчество. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar(20).

· Адрес. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar(50).

· Город. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar(20).

· Телефон. Строковые данные длины из 12 символов c поддержкой NULL значений. Тип данных –char (12).

· Дата_регистрации. Укажем значения по умолчанию, т.е. дату на момент регистрации. Тип данных –date.

 

Для поддержания целостности таблицы необходимо создать ограничение на корректность ввода номера телефона.

 

2. Таблица: Сотрудники.

Содержит поля:

· ID. Идентификатор сотрудника, устанавливаем автогенерацию, без NULL значений. Тип данных – int.

· Фамилия. Строковые данные переменной длины без поддержки NULL значений. Тип данных – nvarchar (20).

· Имя. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar (20).

· Отчество. Строковые данные переменной длины без поддержки NULL значений. Тип данных – nvarchar (20).

· Зарплата. Данные без поддержки NULL значений. Тип данных – money.

· ОтделID. Идентификатор отдела, без NULL значений. Тип данных – int.

· Премия. Данные с поддержкой NULL значений. Тип данных – money.

· Семейное положение. Строковые данные переменной длины без поддержки NULL значений. Тип данных – nvarchar (10).

· Дата рождения. Данные без поддержки NULL значений. Тип данных –date.

· Адрес. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar(50).

· Телефон. Строковые данные длины из 12 символов c поддержкой NULL значений. Тип данных –char (12).

 

Для поддержания целостности таблицы необходимо создать следующие ограничение:

· Ограничения согласно которому премия не может равняться и быть больше чем зарплата

· Ограничение на корректность ввода номера телефона и ограничение, согласно которому в интернет-магазин могут устраиваться кандидаты в возрасте от 18 до 50 лет.

· Ограничение на ввод данных в столбец "Семейное положение" (ввод: Женат, Не женат, Замужем, Не замужем)

 

3. Таблица: Отдел.

Содержит поля:



· ID. Идентификатор отдела, без NULL значений. Тип данных – int.

· Название отдела. Строковые данные переменной длины c поддержкой NULL значений. Тип данных – nvarchar (20).

 

4. Таблица: Товары.

Содержит поля:

· ID. Идентификатор продукта, без поддержки NULL значений. Тип данных – int.

· Название продукта. Строковые данные переменной длины без поддержки NULL значений. Тип данных – nvarchar(50).

 

5. Таблица: Детали товара.

Содержит поля:

· ID. Идентификатор продукта, без поддержки NULL значений. Тип данных – int.

· Цвет. Строковые данные фиксированной длины с поддержкой NULL значений. Тип данных – nchar(20).

· Материал. Строковые данные фиксированной длины с поддержкой NULL значений. Тип данных – nchar(20).

· Текстовое описание. Строковые данные максимальной длины с поддержкой NULL значений. Тип данных – nvarchar (max).

 

6. Таблица склад.

Содержит поля:

· ТоварID. Идентификатор продукта, без поддержки NULL значений. Тип данных – int.

· Остаток, данные без поддержки NULL значений. Тип данных – int.

 

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

 

7. Таблица Заказы.

Содержит поля:

· ID. Идентификатор заказа, устанавливаем автогенерацию, без NULL значений. Тип данных – int.

· СотрудникID. Идентификатор покупателя, с поддержкой NULL значений. Тип данных – int,

· ПокупательID. Идентификатор сотрудника, с поддержкой NULL значений. Тип данных – int,

· Дата оформления. Укажем значения по умолчанию, т.е. дату на момент оформления покупки. Тип данных – date.

 

8. Таблица Детали заказа.

Содержит поля:

· ЗаказID. Идентификатор заказа, данные без поддержки NULL значений. Тип данных – int.

· Количество позиций. Количество позиций, данные без поддержки NULL значений. Тип данных – int.

· ТоварID. Идентификатор продукта, с поддержкой NULL значений. Тип данных – int,

· Количество проданного, данные без поддержки NULL значений. Тип данных – int.

· Цена. Данные без поддержки NULL значений. Тип данных – money.

· Стоимость заказа. Вычислимое столбе по форуме (CONVERT([money],[Количество проданного]*[Цена])) Для подсчета общей суммы заказа.

 

После определения необходимых таблиц, свойств атрибутов мы получим модель базы данных интернет-магазина (см. рис. 2).



Рис. 2. Физическая модель базы данных

Таким образом, в результате проведенного проектирования базы данных описаны все необходимые данные для построения БД: определена структура базы данных: таблицы, сущности, атрибуты и типы данных; выбор первичных ключей; назначение необходимых внешних ключей. Кроме проектирования структуры базы данных, была произведена ее нормализация до второй и третьей нормальной формы. После проектирования таблиц, их ключей и связей, необходимо приступить к созданию базы данных. Помимо базы, таблиц, и их связей, необходимо создать хранимые процедуры, триггеры и представления.


 






Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

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





© cyberpedia.su 2017-2020 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.007 с.