96920

Разработка базы данных на языке SQL предметной области «Магазин бытовой техники»

Курсовая

Информатика, кибернетика и программирование

Эффективная структуризация информации, что позволяет сэкономить время и деньги. Исключение или сведение к минимуму повторяющихся данных путем задания эффективной структуры. Обеспечение всем пользователям быстрого доступа к информации базы данных. Обеспечение расширения базы новыми данными.

Русский

2015-10-12

10.83 MB

5 чел.

ВВЕДЕНИЕ

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

С  развитием информационных технологий и предпринимательства, актуальность использования баз данных значительно увеличилось. Успешные и крупные компании не могут представить свой бизнес без четко построенной информационной системы. Базы данных, построенные на SQL Server, отвечают высоким требованиям производительности и безопасности.

В курсовой работе ставится задача — разработать проект базы данных для накопления необходимой информации в организации, создать (наполнить) базу данных. Разработать приложение, позволяющее вести учет, контроль, а так же получать различные выходные документы. База данных должна быть спроектирована с учетом реализации запросов различного типа по получению информации.

Целями проектирования базы данных являются:

1.Эффективная структуризация информации, что позволяет сэкономить время и деньги.

2.Исключение или сведение к минимуму повторяющихся данных путем задания эффективной структуры.

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

4.Обеспечение расширения базы новыми данными.

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

6.Предотвращение несанкционированного доступа к данным.

7.Предоставление доступа только к той информации, которая необходима для работы отдельному пользователя или группе пользователей.

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

9.Облегчение создания приложений, предназначенных для ввода, редактирования, вывода данных, а так же ведения отчетности.

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

Задача на курсовое проектирование состоит в разработке базы данных на языке SQL предметной области «Магазин бытовой техники» и пользовательской документации. На создание базы данных используем определенные программные обеспечения, такие как: Enterprise Architect (создаем схему и генерируем код), SQL Server Management Studio (редакция и заполнение БД).


1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ

1.1 Общие сведения

При проектировании базы данных решаются две основные проблемы:

1.Отображение объектов предметной области в абстрактные объекты модели данных таким образом, чтобы это отображение не противоречило семантике предметной области, и было по возможности лучшим (эффективным, удобным и т.д.). Часто эту проблему называют проблемой логического проектирования баз данных;

2.Обеспечение эффективного выполнения запросов к базе данных, т.е. рациональное расположение данных во внешней памяти, создание полезных дополнительных структур (например, индексов) с учетом особенностей конкретной СУБД. Эту проблему называют проблемой физического проектирования баз данных.

Проблема проектирования реляционной базы данных состоит в обоснованном принятии решений о том, из каких отношений (таблиц) должна состоять БД и какие атрибуты (характеристики и свойства) должны быть у этих отношений.

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

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

  1.  Возможность добавления, удаления  данных
  2.  Учет поставок и сбыта товара
  3.  Счет выручки
  4.  Определение наиболее успешного менеджера
  5.  Хранение всех сведений о товаре

Требования к данным

Информация о поставщике должна содержать следующие атрибуты:

  •  Наименование фирмы;
  •  Номер телефона представителя фирмы поставщика;
  •  Имя и фамилия представителя;

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

  •  Дата продажи;
  •  количество;
  •  описание товара;
  •  скидка на товар;
  •  стоимость продажи;
  •  менеджер продавший товар.

1.2 Основные сведения о предметной области

База данных предназначена для хранения данных о деятельности магазина (информация о менеджерах, описание товаров, производимые товары, фирмы).

Данная база данных предназначена для облегчения при управлении магазином.

1.3 Таблица 1. Перечень хранимой информации: таблицы, поля, типы.


Имя типа сущности\типа связи

Атрибуты

Тип данных

Описание

manager

Idmanager

целочисленный

Уникальный идентификационный номер менеджера

name

Текст

Имя менеджера

phone

Текст

Телефон заказчика

sale

Idsale

целочисленный

Уникальный идентификационный номер продажи

Idmanager

целочисленный

Номер менеджера продавшего товары

saledate

дата

Дата продажи

saleitem

Idsale

целочисленный

Уникальный идентификационный номер продажи

Idwares

целочисленный

Номер товара

quantity

целочисленный

Количество проданного товара

wares

Idwares

целочисленный

Уникальный идентификационный номер товара

name

текст

Название товара

description

текст

Полное описание товара

orderprice

целочисленный

Цена закупки

saleprice

целочисленный

Цена продажи

Iddiscount

целочисленный

Процент скидки на продажу товара

discount

Iddiscount

целочисленный

Уникальный идентификационный номер скидки

percent

целочисленный

Уровень скидок

period

Idprovider

целочисленный

Номер поставщика

Idwares

целочисленный

Номер товара

day

целочисленный

Количество дней за которые товар доставят

provider

Idprovider

целочисленный

Уникальный идентификационный номер поставщика

name

текст

Наименование фирмы поставщика

agentname

текст

Имя представителя поставщика

phone

текст

Номер телефона представителя

order

idorder

целочисленный

Уникальный идентификационный номер заказа

Idprovider

целочисленный

Номер поставщика у которого сделали заказ

orddate

дата

Дата заказа

orderitem

idorder

целочисленный

Номер заказа

Idwares

целочисленный

Номер заказанного товара

warescount

целочисленный

Количество заказанного товара

1.4 Таблица 2. Выделение справочных и оперативных данных

Справочные данные

Оперативные данные

Менеджер (manager)

Продажи (sale)

Поставщик (provider)

Информация о продажах (saleitem)

Заказы (order)

Информация о заказах(orderitem)

Информация о заказе (orderitem)

Скидки (discount)

Информация о  товаре (wares)

1.5 Необходимые предполагаемые запросы к БД

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

  1.  Скидки  до 20%?
    1.  Скидки  с 10% до 30% ?
      1.  Товары на которые действует скидка?
      2.  Товары на которые действует скидка 10% ?
      3.  Товары на которые действует скидка 20% до 40 %?
      4.  Какие товары были проданы в 2014 году?
      5.  Какие товары были проданы в период с 2014 по 2015 год?
      6.  Есть ли  менеджеры с фамилией Иванов?
      7.  Есть ли  менеджер с номером телефона 89093212080?
      8.  Количество поставщиков которые доставляют товар за 3 дня?
      9.  Количество товара меньше 20 ?

1.6 Выводы по разделу

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

Одно из требований — реляционная база данных должна быть нормализована. Процесс нормализации имеет своей целью устранение избыточности данных и заключается в приведении к третьей нормальной форме (или к нормальной форме Бойса-Кодда).

Нормализацией называется формальная процедура, в ходе которой атрибуты данных группируются в таблицы, а таблицы группируются в базу данных (БД).

Анализ предметной области обычно осуществляется на основании известных сведений о ней с учетом целей проектирования программной системы.

Базами данных называют электронные хранилища информации, доступ к которым осуществляется с помощью одного или нескольких компьютеров.

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

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

Единицей, хранящейся в БД информации, является таблица. Каждая таблица представляет собой совокупность строк и столбцов, где строки соответствуют экземпляру, а столбцы - атрибутам (признакам, характеристикам, параметрам объекта, события, явления).

В терминах БД столбцы таблицы называются полями, а ее строки - записями.

Нормализация выполняется поэтапно.

Первая нормальная форма (1НФ). Для нее требуется, чтобы таблица была плоской и не содержала повторяющихся групп. У плоской таблицы есть только две характеристики - длина (количество записей или строк) и ширина (количество полей или столбцов). Такая таблица не должна содержать ячеек, включающих несколько значений.

Никакую из систем управления базами данных (СУБД) не удовлетворяет только 1НФ, так как в этом случае необходимо определить большое число полей, многие  из которых остаются в основном пустыми. Избыточные данные могут послужить причиной проблем целостности и снижение эффективности при внесении изменений, поэтому подобных решений при проектировании баз данных необходимо избегать.

Вторая нормальная форма (2НФ). Для 2НФ требуется, чтобы все поля таблицы зависели от первичного ключа, то есть, чтобы первичный ключ однозначно определял запись и не был избыточен.

В каждой таблице БД может существовать первичный ключ - поле или набор полей, однозначно идентифицирующий запись.

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

Те поля, которые зависят только от части первичного ключа, должны быть выделены в составе отдельных таблиц. 2НФ позволяет удалить большую часть повторяющихся данных, которые часто остаются после первого этапа нормализации.

Для третьей нормальной формы (ЗНФ) требуется, чтобы все не ключевые столбцы таблицы зависели от первичного ключа таблицы, но были независимы друг от друга. Для этого требуется, чтобы таблицы были приведены к 1НФ и 2НФ.

Отношение находится в четвертой нормальной форме (4НФ), если в нем не присутствуют функциональные многозначные зависимости. Для 4НФ требуется, чтобы в одной таблице не содержались независимые элементы данных, если между ними существует отношение "многие-ко-многим".

Если в отношении имеется много функциональных зависимостей, 4НФ не устраняет избыточность, то применяют пятую нормальную форму (ЗНФ).

Разложение отношений из 4НФ в пятую нормальную форму должно быть выполнено так, чтобы каждая проекция, полученная из 4НФ, содержала не менее одного возможного ключа и хотя бы один неключевой атрибут из исходного отношения. Для 5НФ требуется, чтобы можно было восстановить исходную таблицу на основе информации таблиц, на которые она была разбита. Кроме того, необходимо, чтобы таблицы соответствовали ЗНФ, а при наличии отношений "многие-ко-многим" - 4НФ.

Для большинства существующих СУБД необходимо представить проект базы данных в ЗНФ, так как этого вполне достаточно практически для всех обычных приложений. При разработке исключительно больших систем, когда необходимо максимальное сокращение объемов хранимых данных, желательно произвести дальнейшую нормализацию. Но в этом случае можно столкнуться с недостатками нормализации. Поскольку порог человеческого восприятия не позволяет одновременно анализировать большое число объектов с учетом их взаимосвязей, можно утверждать, что с увеличением числа нормализованных таблиц уменьшается целостное восприятие базы данных как системы взаимосвязанных данных. Другим недостатком нормализованной базы данных является необходимость считывать связанные данные из нескольких таблиц при выполнении одного запроса.


2 МОДЕЛИРОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ

2.1 Общие сведения

Моделирование данных — это процесс создания логического представления структуры базы данных.

Эта структура должна удовлетворять представления пользователя данными. Достижение соответствия (адекватности) структуры базы данных представлениям пользователя является наиболее важной задачей при разработке эффективного приложения баз данных и основой для всей последующей работы при разработке базы данных. Если этого не достичь, то пользователи оценят базу данных неудобной, неполной и то, что она вообще не оправдала их ожидания.

В настоящее время существует два различных подхода к моделированию данных:

1.     модель базы данных типа «сущность - связь» (entity-relationship model), имеющая значительное количество сторонников среди профессионалов;

2.     семантическая объектная модель (некоторые считают ее более простой и точной).

При проектировании базы данных используем первый, наиболее распространенный метод моделирования данных — «сущность - связь».

Этот выбор объясняется в первую очередь наглядностью представления отношений между объектами и поведения элементов базы данных. На этом подходе к моделированию данных основываются большинство средств автоматизации проектирования (CASE), применение которых значительно сокращает время разработки, а так же предотвращают возникновение многих ошибок.

В настоящее время не существует единого общепринятого стандарта для этой модели, символы для графического представления модели весьма различны.

2.2 Выделение сущностей, атрибутов, ключей, связей.

Сущность - это что-то такое, о чем нужно хранить информацию в базе данных.

При проектировании баз данных достаточно описать происходящую ситуацию - и большинство существительных и часть глаголов будут кандидатами на сущности.

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

В данной БД сущностями являются следующие понятия:

  1.  manager;
    1.  sale;
    2.  saleitem;
    3.  wares;
    4.  discount;
    5.  period;
    6.  provider;
    7.  order;
    8.  orderitem.

Записи об определенных параметрах каждой из сущностей называются атрибутами. Например, для сущности "заказчик", видимо, будет храниться информация об его наименовании, представителях, адресе и т.п.

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

Общее правило при выборе набора атрибутов: нужно начинать с результата и стараться упрощать модель, а не усложнять ее. Первое, на что нужно ответить - на какие вопросы пользователей должны отвечать ваша база данных?

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

Атрибуты данной базы данных представлены в виде рисунков (1-9)

Рис. 1 – Атрибуты таблицы discount

Рис. 2 – Атрибуты таблицы manager

Рис. 3 – Атрибуты таблицы order

Рис. 4 – Атрибуты таблицы orderitem

Рис. 5 – Атрибуты таблицы period

Рис. 6 – Атрибуты таблицы provider

Рис. 7 – Атрибуты таблицы sale

Рис. 8 – Атрибуты таблицы saleitem

Рис. 9 – Атрибуты таблицы wares


Ключ — минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Минимальность означает, что исключение из набора любого атрибута не позволяет идентифицировать сущность по оставшимся. В сущности manager ключом является idmanager.

Потенциальный ключ — в реляционной модели данных — подмножество атрибутов отношения, удовлетворяющее требованиям уникальности и минимальности (несократимости).

Уникальность означает, что не существует двух кортежей (это каждая строка, содержащая данные) данного отношения, в которых значения этого подмножества атрибутов совпадают (равны).

Минимальность (несократимость) означает, что в составе потенциального ключа отсутствует меньшее подмножество атрибутов, удовлетворяющее условию уникальности. Иными словами, если из потенциального ключа убрать любой атрибут, он утратит свойство уникальности.

Поскольку все кортежи в отношении по определению уникальны, в нём всегда существует хотя бы один потенциальный ключ (например, включающий все атрибуты отношения).

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

Теоретически, все потенциальные ключи равно пригодны в качестве первичного ключа, на практике в качестве первичного обычно выбирается тот из потенциальных ключей, который имеет меньший размер (физического хранения) и/или включает меньшее количество атрибутов.

Первичный ключ (англ. Primary key) — в реляционной модели данных один из потенциальных ключей отношения, выбранный в качестве основного ключа (или ключа по умолчанию).

Если в отношении (таблица) имеется единственный потенциальный ключ, он является и первичным ключом. Если потенциальных ключей несколько, один из них выбирается в качестве первичного, а другие называют «альтернативными».

Внешний ключ (англ. Foreign key) – ключ, который определяет связь поля с другой таблицей, для которой этот ключ является первичным. Соответственно, если осуществляется связь вида один-ко-многим, это поле никак не может обладать свойством уникальности. Используется для организации нормализованных данных.

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

Таблица 3. Определение первичного ключа для типов сущностей:

Первичный ключ

Сущность

idmanager

manager

idsale

Sale

idwares

Wares

iddiscount

discount

idprovider

provider

idorder

Order


2.3 Проектирование диаграммы сущность-связь в EA

Для создания БД нужны таблицы, которые в дальнейшем будем заполнять. Для этого открываем специальную программу: Enterprise Architect (Рис. 6).

Рис. 10

В программе создаем нужные нам таблицы. Указываем названия таблицы, так же создаем атрибуты, у которых указываем их домены («вид» данных) .

Рис. 11 – Рабочая область, где указаны созданные нами таблицы и их связи

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

2.4 Подготовка диаграммы сущность-связь в EA к переносу на целевую СУБД и автоматизированная генерация кода SQL

Генерация кода из EAпроизводится следующим образом: ToolsDatabase EngineeringGenerate PackageDDL. Открывается нужное окно с опциями (Рис. 12).

Рис. 12 –GeneratePackageDDL

Указываем нужные нам опции, нажимая на определенные галочки, и жмем на кнопку «Generate». В итоге мы получаем файл кода в формате sql, который потом запускаем через MySQL 

2.5 Создание диаграммы средствами MS SQL SERVER и MS SQL SERVER Management Studio

Для создания диаграммы, кликаем правой кнопкой мыши на папку «DatabaseDiagrams» и нажимаем на «New…» (Рис. 13).

Рис. 13 – Создание новой диаграммы в MySQL

Затем появляется рабочее окно, в котором указываем, какие таблицы должны быть добавлены в новую диаграмму (выделяем и нажимаем на кнопку «Add»)

После добавлений таблиц, программа представляет диаграмму, созданную в EA, с сущностями и их атрибутами со всеми ключами и связями, прописанные в «Архитекторе».

Нормализация - это процесс, позволяющий гарантировать эффективность структур данных в реляционной базе данных.

Отношения находятся во второй нормальной форме, и соответствуют требованиям пользовательских транзакций.

Вторая нормальная форма обязана столбцу saleprice, так как он является вычисляемым столбцом и зависит от другого, не ключевого, столбца.

Рис. 14 – Схема БД

2.8 Начальное заполнение БД

Для заполнения таблицы выполняем следующие действия: Правой кнопкой нажимаем на нужную нам таблицу и нажимаем на кнопку «EditTop 200 Rows» (Рис. 15).

Рис. 15 – Открытие окна для заполнения таблицы кортежами

Перед нами откроется окно с атрибутами и кортежами. Кортежи заполняем в зависимости от их доменов (если только числа, то только числа). Так же должны учитывать, что некоторые атрибуты не могут иметь пустое значение при заполнении (NULL), в основном это атрибут с доменом bigint и он является первичным ключом в отношении .

Рис. 16 – Заполнение таблицы кортежами

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

Рис. 17 – Design – Редакция атрибутов данной таблицы

В данном  окне можно проводить все те же действия, что и в EA. Мы можем поменять название нужной нам колонки, удалить её или добавить новую. Так же программа позволяет указать тип колонки и поставить галочку о допуске нулевых значений (Рис. 18).

Рис. 18 – Рабочее окно по редактированию атрибутов таблицы

2.7 Выводы по разделу

Модель предметной области — это визуальное представление концептуальных классов или объектов реального мира в терминах предметной области. Моделирование предметной области — один из начальных этапов проектирования системы, необходимый для выявления, классификации и формализации сведений обо всех аспектах предметной области, определяющих свойства разрабатываемой системы.

Для создания модели предметной области выполняются следующие этапы.

  1.  Выявляются концептуальные классы на основе списка категорий и метода анализа текстового описания для текущей итерации разработки.
  2.  Концептуальные классы отображаются в модели предметной области.
  3.  Добавляются необходимые ассоциации, отражающие связи, для которых требуется выделение памяти.
  4.  Добавляются атрибуты, необходимые для выполнения информационных требований

В процессе разработки модели предметной области необходимо идентифицировать связи (ассоциации) между концептуальными классами, удовлетворяющие информационным требованиям разрабатываемых на текущей итерации сценариев, а также выделить те из них, которые способствуют лучшему пониманию модели предметной области. 

В результате разработки была создана достаточно полезная модель предметной области. Не существует такого понятия, как "единственно верная модель". Все модели являются аппроксимациями изучаемой предметной области. В хорошей модели представлены наиболее существенные абстракции и данные, которые требуются для понимания предметной области в контексте текущих требований.

С помощью разработанной визуальной модели можно досконально разобраться в предметной области, понятиях, терминологии и взаимосвязях между различными элементами проектируемой компьютерной обучающей системы. Выявленные классы предметной области и глоссарий понятий используются в процессе дальнейших этапов разработки системы при описании прецедентов и проектировании интерфейса пользователя, а также при определении внутренних классов системы в ходе анализа и проектирования.


  1.  СОЗДАНИЕ И ЗАПУСК БАЗОВЫХ ЗАПРОСОВ SQL

SELECT  — оператор DML языка SQL, возвращающий набор данных (выборку) из базы данных, удовлетворяющих заданному условию.

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

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

Запрос выполняется следующим образом: сначала извлекаются все записи из таблицы, а затем для каждой записи набора проверяется её соответствие заданному критерию. Если осуществляется слияние из нескольких таблиц, то сначала составляется произведение таблиц, а уже затем из полученного набора отбираются требуемые записи.

Особую роль играет обработка NULL-значений, когда при слиянии, например, двух таблиц — главной и подчинённой — имеются или отсутствуют соответствия между записями таблиц, участвующих в слиянии. Для решения этой задачи используются механизмы внутреннего и внешнего слияния.

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

Основные ключевые слова, относящиеся к запросу SELECT:

  1.  WHERE — используется для определения, какие строки должны быть выбраны или включены в GROUP BY.
  2.  GROUP BY — используется для объединения строк с общими значениями в элементы меньшего набора строк.
  3.  HAVING — используется для определения, какие строки после GROUP BY должны быть выбраны.
  4.  ORDER BY — используется для определения, какие столбцы используются для сортировки результирующего набора данных.

Рис. 19 – Поиск таблицы manager

Рис. 20 – Поиск Oz менеджера с именем Иванов Максим из таблицы manager


Рис. 21 – Поиск таблицы sale

Рис. 22 – Поиск фирмы поставщика

с названием «sony» из таблицы provider

Рис. 23 – Поиск поставщика с номером ID равное 5

Рис. 24 – Поиск поставщика, чье время поставки  больше 3 дней

Рис. 25 – Поиск поставщика, чье время поставки больше или равно 3 дням и ID которого 1

Рис. 26 – Поиск названий поставщиков и их телефоны, чьи Id больше или равно 2

Рис. 27 – Поиск поставщиков, чьё время доставки равно 4 или чей номер товара равен 3

Рис. 28 – Поиск названия товара и его описания, чье ID скидки равен «1»  или чья цена закупки равна «3»

Запросы по добавлению строки производятся с помощью оператора insert.

INSERT — оператор языка SQL, который позволяет добавить строки в таблицу, заполняя их значениями. Значения можно вставлять перечислением с помощью слова values и перечислив их в круглых скобках через запятую или оператором select.

Во время выполнения оператора могут возникнуть ошибки:

  1.  если при создании таблицы для поля был указан параметр not null и не было определено значение по умолчанию, то при отсутствии для него вставляемого значения возникнет ошибка. Решение очевидно:
  2.  либо убрать параметр not null;
  3.  либо указать значение по умолчанию;
  4.  либо вставить значение.
  5.  если произойдет попытка вставки в поле с типом identity (автоинскремент), то также произойдет ошибка. Решить проблему можно двумя способами:
    1.  не вставлять значение в это поле;
    2.  указать опцию identity_insert on после чего вставить уникальное значение для этого столбца.

Примеры:

Рис. 29 – Добавляем новую строку в таблицу discount

Рис. 30 – Таблица discount после добавлений

Изменение строки производятся с помощью команды UPDATE.

UPDATE - Оператор UPDATE изменяет имеющиеся данные в таблице. С помощью одного оператора могут быть заданы значения для любого количества столбцов. Однако в одном и том же операторе UPDATE можно вносить изменения в каждый столбец указанной таблицы только один раз. При отсутствии предложения WHERE будут обновлены все строки таблицы.

Если столбец допускает NULL-значение, то его можно указать в явном виде. Кроме того, можно заменить имеющееся значение на значение по умолчанию (DEFAULT) для данного столбца.

Ссылка на "выражение" может относиться к текущим значениям в изменяемой таблице. Разрешается также значения одних столбцов присваивать другим столбцам. Для вычисления значений столбцов допускается также использование подзапросов. 

Рис. 31 – Таблица discount, после изменений.

Удаление строки осуществляется с помощью команды DELETE.

DELETE — в языках, подобных SQLDML-операция удаления записей из таблицы. Критерий отбора записей для удаления определяется выражением where. В случае, если критерий отбора не определён, выполняется удаление всех записей.

  1.  В СУБД, поддерживающих триггеры, операция Delete может вызывать их срабатывание;
  2.  При наличии на таблице внешних ключей все дочерние к удаляемым записи в подчинённых таблицах также должны быть удалены для обеспечения ссылочной целостности;
  3.  В СУБД, поддерживающих транзакции, выполнение операции Delete должно быть подтверждено (COMMIT), либо опровергнуто (ROLLBACK) вызовом соответствующих операций.

Удаление всех записей из таблицы при наличии внешних ключей и механизме транзакций может занять продолжительное время. Для полной очистки таблицы может быть использована операция TRUNCATE.

Рис. 32 – Удаляем строку, где quantity имеет значение «2», в таблице saleitem.

Рис. 33 – Таблица saleitem, после удаления строки.


4 СОЗДАНИЕ И ЗАПУСК ПРОДВИНУТЫХ ЗАПРОСОВ SQL

Рис. 34 – Выводим данные из двух связанных таблиц

Рис. 35 – Выводим данные из двух связанных таблиц

Рис. 36 – Выводим данные из трех связанных таблиц

Рис. 37 – Выводим кортежи, где Idsale имеет значение (NULL)


Рис. 38 – Выводим кортежи, где Idsale имеют значения

Рис. 39 – Выводим номер Idsale

Рис. 40 – Считаем количество кортежей

Рис. 41 – Создаем новую таблицу photo

Рис. 42 – Добавляем кортеж Idmanager в таблицу photo

Рис.43 – Изменяем кортеж idmanager не позволяющее иметь пустое значение

Рис.44 – Заполняем таблицу значениями

Рис.45 – Добавляем атрибут name в таблицу photo

Рис.46 – Добавляем файл в таблицу

Рис.47 – Создаем новую таблицу best manager

Рис.48 – Выводим таблицу, где в атрибуте manager удовлетворяют условие.

Рис.49 – Создаем таблицу с типами и указываем возможность иметь пустые значения

Рис.50 – Выводим таблицу asd

Рис.51 – Назначаем Первичный ключ

Рис.52 – Удаляем Первичный ключ в таблице RIP

Рис.53 – Создаем Индексы

Рис.54 – Создает уникальный индекс


Рис.55 – Удаляем Индексы таблицы sale

Рис.56 – Создаем новое view

Рис.57 – Удаление view shop

Рис.58 – Создаем view из нескольких таблиц

Рис.59 – Выводим Clients


5
 РАБОТА С ПРЕДСТАВЛЕНИЯМИ 

5.1 Общие сведения

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

5.2 Создание и использование представлений

Для составления отчётов потребуется сводная таблица по товару магазина .

SQL код 

SELECT sale.Idmanager,manager.Idmanager,sale.Idsale,saleitem.Idsale

From saleitem, manager, sale

Where sale.Idmanager = manager.Idmanager

and sale.Idsale = saleitem.Idsale

Рисунок 43– «Сводная таблица по товару»

Для того что не составлять этот запрос каждый раз можно создать представление, содержащее этот запрос.

SQL код 

Create view all as

SELECT saleitem.Idsale,sale.Idsale,sale.Idmanager, manager.Idmanager

From saleitem, sale, manager

Where saleitem.Idsale = sale.Idsale

and sale.Idmanager = manager.Idmanager

Рисунок 44– «Выборка из представления»

Для того чтобы удалить представление также используестя DROP

SQL код

Drop view all

5.3 Выводы по разделу

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


6 ХРАНИМЫЕ ПРОЦЕДУРЫ

Хранимые процедуры представляют собой группы связанных между собой операторов SQL, применение которых делает работу программиста более легкой и гибкой, поскольку выполнить хранимую процедуру часто оказывается гораздо проще, чем последовательность отдельных операторов SQL. Хранимые процедуры представляют собой набор команд, состоящий из одного или нескольких операторов SQL или функций и сохраняемый в базе данных в откомпилированном виде. Выполнение в базе данных хранимых процедур вместо отдельных операторов SQL дает пользователю следующие преимущества:

  1.  необходимые операторы уже содержатся в базе данных;
  2.  все они прошли этап синтаксического анализа и находятся в исполняемом формате; перед выполнением хранимой процедуры SQL Server генерирует для нее план исполнения, выполняет ее оптимизацию и компиляцию;
  3.  хранимые процедуры поддерживают модульное программирование, так как позволяют разбивать большие задачи на самостоятельные, более мелкие и удобные в управлении части;
  4.  хранимые процедуры могут вызывать другие хранимые процедуры и функции;
  5.  хранимые процедуры могут быть вызваны из прикладных программ других типов;
  6.  как правило, хранимые процедуры выполняются быстрее, чем последовательность отдельных операторов;
  7.  хранимые процедуры проще использовать: они могут состоять из десятков и сотен команд, но для их запуска достаточно указать всего лишь имя нужной хранимой процедуры. Это позволяет уменьшить размер запроса, посылаемого от клиента на сервер, а значит, и нагрузку на сеть.

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

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

Хранимые процедуры существуют независимо от таблиц или каких-либо других объектов баз данных. Они вызываются клиентской программой, другой хранимой процедурой или триггером. Разработчик может управлять правами доступа к хранимой процедуре, разрешая или запрещая ее выполнение. Изменять код хранимой процедуры разрешается только ее владельцу или члену фиксированной роли базы данных. При необходимости можно передать права владения ею от одного пользователя к другому.

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

В SQL Server имеется несколько типов хранимых процедур.

  1.  Системные хранимые процедуры предназначены для выполнения различных административных действий. Практически все действия по администрированию сервера выполняются с их помощью. Можно сказать, что системные хранимые процедуры являются интерфейсом, обеспечивающим работу с системными таблицами, которая, в конечном счете, сводится к изменению, добавлению, удалению и выборке данных из системных таблиц как пользовательских, так и системных баз данных. Системные хранимые процедуры имеют префикс sp_, хранятся в системной базе данных и могут быть вызваны в контексте любой другой базы данных.
  2.  Пользовательские хранимые процедуры реализуют те или иные действия. Хранимые процедуры – полноценный объект базы данных. Вследствие этого каждая хранимая процедура располагается в конкретной базе данных, где и выполняется.
  3.  Временные хранимые процедуры существуют лишь некоторое время, после чего автоматически уничтожаются сервером. Они делятся на локальные и глобальные. Локальные временные хранимые процедуры могут быть вызваны только из того соединения, в котором созданы. При создании такой процедуры ей необходимо дать имя, начинающееся с одного символа #. Как и все временные объекты, хранимые процедуры этого типа автоматически удаляются при отключении пользователя, перезапуске или остановке сервера. Глобальные временные хранимые процедуры доступны для любых соединений сервера, на котором имеется такая же процедура. Для ее определения достаточно дать ей имя, начинающееся с символов ##. Удаляются эти процедуры при перезапуске или остановке сервера, а также при закрытии соединения, в контексте которого они были созданы.

Создание хранимой процедуры предполагает решение следующих задач:

  1.  определение типа создаваемой хранимой процедуры: временная или пользовательская. Кроме этого, можно создать свою собственную системную хранимую процедуру, назначив ей имя с префиксом sp_ и поместив ее в системную базу данных. Такая процедура будет доступна в контексте любой базы данных локального сервера;
  2.  планирование прав доступа. При создании хранимой процедуры следует учитывать, что она будет иметь те же права доступа к объектам базы данных, что и создавший ее пользователь;
  3.  определение параметров хранимой процедуры. Подобно процедурам, входящим в состав большинства языков программирования, хранимые процедуры могут обладать входными и выходными параметрами;
  4.  разработка кода хранимой процедуры. Код процедуры может содержать последовательность любых команд SQL, включая вызов других хранимых процедур.

Создание новой и изменение имеющейся хранимой процедуры осуществляется с помощью следующей команды:

<определение_процедуры>::=

{CREATE | ALTER } PROC[EDURE] имя_процедуры

   [;номер]

[{@имя_параметра тип_данных } [VARYING ]

  [=default][OUTPUT] ][,...n]

[WITH { RECOMPILE | ENCRYPTION | RECOMPILE,

  ENCRYPTION }]

[FOR REPLICATION]

AS

  sql_оператор [...n]

Рассмотрим параметры данной команды.

Используя префиксы sp_, #, ##, создаваемую процедуру можно определить в качестве системной или временной. Как видно из синтаксиса команды, не допускается указывать имя владельца, которому будет принадлежать создаваемая процедура, а также имя базы данных, где она должна быть размещена. Таким образом, чтобы разместить создаваемую хранимую процедуру в конкретной базе данных, необходимо выполнить команду CREATE PROCEDURE в контексте этой базы данных. При обращении из тела хранимой процедуры к объектам той же базы данных можно использовать укороченные имена, т. е. без указания имени базы данных. Когда же требуется обратиться к объектам, расположенным в других базах данных, указание имени базы данных обязательно.

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

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

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

Наличие ключевого слова OUTPUT означает, что соответствующий параметр предназначен для возвращения данных из хранимой процедуры. Однако это вовсе не означает, что параметр не подходит для передачи значений в хранимую процедуру. Указание ключевого слова OUTPUT предписывает серверу при выходе из хранимой процедуры присвоить текущее значение параметра локальной переменной, которая была указана при вызове процедуры в качестве значения параметра. Отметим, что при указании ключевого слова OUTPUT значение соответствующего параметра при вызове процедуры может быть задано только с помощью локальной переменной. Не разрешается использование любых выражений или констант, допустимое для обычных параметров.

Ключевое слово VARYING применяется совместно с параметром OUTPUT, имеющим тип CURSOR. Оно определяет, что выходным параметром будет результирующее множество.

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

Так как сервер кэширует план исполнения запроса и компилированный код, при последующем вызове процедуры будут использоваться уже готовые значения. Однако в некоторых случаях все же требуется выполнять перекомпиляцию кода процедуры. Указание ключевого слова RECOMPILE предписывает системе создавать план выполнения хранимой процедуры при каждом ее вызове.

Параметр FOR REPLICATION востребован при репликации данных и включении создаваемой хранимой процедуры в качестве статьи в публикацию.

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

Ключевое слово AS размещается в начале собственно тела хранимой процедуры, т.е. набора команд SQL, с помощью которых и будет реализовываться то или иное действие. В теле процедуры могут применяться практически все команды SQL, объявляться транзакции, устанавливаться блокировки и вызываться другие хранимые процедуры. Выход из хранимой процедуры можно осуществить посредством команды RETURN.

Удаление хранимой процедуры осуществляется командой:

DROP PROCEDURE {имя_процедуры} [,...n]

Для выполнения хранимой процедуры используется команда:

[[ EXEC [ UTE] имя_процедуры [;номер]

[[@имя_параметра=]{значение | @имя_переменной}

  [OUTPUT ]|[DEFAULT ]][,...n]

Если вызов хранимой процедуры не является единственной командой в пакете, то присутствие команды EXECUTE обязательно. Более того, эта команда требуется для вызова процедуры из тела другой процедуры или триггера.

Использование ключевого слова OUTPUT при вызове процедуры разрешается только для параметров, которые были объявлены при создании процедуры с ключевым словом OUTPUT.

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

Из синтаксиса команды EXECUTE видно, что имена параметров могут быть опущены при вызове процедуры. Однако в этом случае пользователь должен указывать значения для параметров в том же порядке, в каком они перечислялись при создании процедуры. Присвоить параметру значение по умолчанию, просто пропустив его при перечислении нельзя. Если же требуется опустить параметры, для которых определено значение по умолчанию, достаточно явного указания имен параметров при вызове хранимой процедуры. Более того, таким способом можно перечислять параметры и их значения в произвольном порядке.

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


7 ТРИГГЕРЫ

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

Триггер – это откомпилированная SQL-процедура, исполнение которой обусловлено наступлением определенных событий внутри реляционной базы данных. Применение триггеров большей частью весьма удобно для пользователей базы данных. И все же их использование часто связано с дополнительными затратами ресурсов на операции ввода/вывода. В том случае, когда тех же результатов (с гораздо меньшими непроизводительными затратами ресурсов) можно добиться с помощью хранимых процедур или прикладных программ, применение триггеров нецелесообразно.

Триггеры – особый инструмент SQL-сервера, используемый для поддержания целостности данных в базе данных. С помощью ограничений целостности, правил и значений по умолчанию не всегда можно добиться нужного уровня функциональности. Часто требуется реализовать сложные алгоритмы проверки данных, гарантирующие их достоверность и реальность. Кроме того, иногда необходимо отслеживать изменения значений таблицы, чтобы нужным образом изменить связанные данные. Триггеры можно рассматривать как своего рода фильтры, вступающие в действие после выполнения всех операций в соответствии с правилами, стандартными значениями и т.д.

Триггер представляет собой специальный тип хранимых процедур, запускаемых сервером автоматически при попытке изменения данных в таблицах, с которыми триггеры связаны. Каждый триггер привязывается к конкретной таблице. Все производимые им модификации данных рассматриваются как одна транзакция. В случае обнаружения ошибки или нарушения целостности данных происходит откат этой транзакции. Тем самым внесение изменений запрещается. Отменяются также все изменения, уже сделанные триггером.

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

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

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

  1.  проверка корректности введенных данных и выполнение сложных ограничений целостности данных, которые трудно, если вообще возможно, поддерживать с помощью ограничений целостности, установленных для таблицы;
  2.  выдача предупреждений, напоминающих о необходимости выполнения некоторых действий при обновлении таблицы, реализованном определенным образом;
  3.  накопление аудиторской информации посредством фиксации сведений о внесенных изменениях и тех лицах, которые их выполнили;
  4.  поддержка репликации.

Основной формат команды CREATE TRIGGER показан ниже:

<Определение_триггера>::=

 CREATE TRIGGER имя_триггера

 BEFORE | AFTER <триггерное_событие>

 ON <имя_таблицы>

 [REFERENCING

   <список_старых_или_новых_псевдонимов>]

 [FOR EACH { ROW | STATEMENT}]

 [WHEN(условие_триггера)]

 <тело_триггера>

триггерные события состоят из вставки, удаления и обновления строк в таблице. В последнем случае для триггерного события можно указать конкретные имена столбцов таблицы. Время запуска триггера определяется с помощью ключевых слов BEFORE (триггер запускается до выполнения связанных с ним событий) или AFTER (после их выполнения).

Выполняемые триггером действия задаются для каждой строки (FOR EACH ROW), охваченной данным событием, или только один раз для каждого события (FOR EACH STATEMENT).

Обозначение <список_старых_или_новых_псевдонимов> относится к таким компонентам, как старая или новая строка (OLD / NEW) либо старая или новая таблица (OLD TABLE / NEW TABLE). Ясно, что старые значения не применимы для событий вставки, а новые – для событий удаления.

При условии правильного использования триггеры могут стать очень мощным механизмом. Основное их преимущество заключается в том, что стандартные функции сохраняются внутри базы данных и согласованно активизируются при каждом ее обновлении. Это может существенно упростить приложения. Тем не менее следует упомянуть и о присущих триггеру недостатках:

  1.  сложность: при перемещении некоторых функций в базу данных усложняются задачи ее проектирования, реализации и администрирования;
  2.  скрытая функциональность: перенос части функций в базу данных и сохранение их в виде одного или нескольких триггеров иногда приводит к сокрытию от пользователя некоторых функциональных возможностей. Хотя это в определенной степени упрощает его работу, но, к сожалению, может стать причиной незапланированных, потенциально нежелательных и вредных побочных эффектов, поскольку в этом случае пользователь не в состоянии контролировать все процессы, происходящие в базе данных;
  3.  влияние на производительность: перед выполнением каждой команды по изменению состояния базы данных СУБД должна проверить триггерное условие с целью выяснения необходимости запуска триггера для этой команды. Выполнение подобных вычислений сказывается на общей производительности СУБД, а в моменты пиковой нагрузки ее снижение может стать особенно заметным. Очевидно, что при возрастании количества триггеров увеличиваются и накладные расходы, связанные с такими операциями.

Неправильно написанные триггеры могут привести к серьезным проблемам, таким, например, как появление "мертвых" блокировок. Триггеры способны длительное время блокировать множество ресурсов, поэтому следует обратить особое внимание на сведение к минимуму конфликтов доступа.

В реализации СУБД MS SQL Server используется следующий оператор создания или изменения триггера:

<Определение_триггера>::=

{CREATE | ALTER} TRIGGER имя_триггера

ON {имя_таблицы | имя_просмотра }

[WITH ENCRYPTION ]

{

{ { FOR | AFTER | INSTEAD OF }

{ [ DELETE] [,] [ INSERT] [,] [ UPDATE] }

[ WITH APPEND ]

[ NOT FOR REPLICATION ]

AS

  sql_оператор[...n]

} |

{ {FOR | AFTER | INSTEAD OF } { [INSERT] [,]

 [UPDATE] }

[ WITH APPEND]

[ NOT FOR REPLICATION]

AS

{ IF UPDATE(имя_столбца)

[ {AND | OR} UPDATE(имя_столбца)] [...n]

|

IF (COLUMNS_UPDATES(){оператор_бит_обработки}

 бит_маска_изменения)

{оператор_бит_сравнения }бит_маска [...n]}

sql_оператор [...n]

}

}

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

Рассмотрим назначение аргументов из команды CREATE | ALTER TRIGGER.

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

При указании аргумента WITH ENCRYPTION сервер выполняет шифрование кода триггера, чтобы никто, включая администратора, не мог получить к нему доступ и прочитать его. Шифрование часто используется для скрытия авторских алгоритмов обработки данных, являющихся интеллектуальной собственностью программиста или коммерческой тайной.

В SQL Server существует два параметра, определяющих поведение триггеров:

AFTER -  триггер выполняется после успешного выполнения вызвавших его команд. Если же команды по какой-либо причине не могут быть успешно завершены, триггер не выполняется. Следует отметить, что изменения данных в результате выполнения запроса пользователя и выполнение триггера осуществляется в теле одной транзакции: если произойдет откат триггера, то будут отклонены и пользовательские изменения. Можно определить несколько AFTER-триггеров для каждой операции (INSERT, UPDATE, DELETE). Если для таблицы предусмотрено выполнение нескольких AFTER-триггеров, то с помощью системной хранимой процедуры sp_settriggerorder можно указать, какой из них будет выполняться первым, а какой последним. По умолчанию в SQL Server все триггеры являются AFTER-триггерами.

INSTEAD OF - триггер вызывается вместо выполнения команд. В отличие от AFTER-триггера INSTEAD OF-триггер может быть определен как для таблицы, так и для просмотра. Для каждой операции INSERT, UPDATE, DELETE можно определить только один INSTEAD OF-триггер.

Триггеры различают по типу команд, на которые они реагируют.

Существует три типа триггеров:

  1.  INSERT TRIGGER – запускаются при попытке вставки данных с помощью команды INSERT.
  2.  UPDATE TRIGGER – запускаются при попытке изменения данных с помощью команды UPDATE.
  3.  DELETE TRIGGER – запускаются при попытке удаления данных с помощью команды DELETE.

Конструкции [ DELETE] [,] [ INSERT] [,] [ UPDATE] и FOR | AFTER | INSTEAD OF } { [INSERT] [,] [UPDATE] определяют, на какую команду будет реагировать триггер. При его создании должна быть указана хотя бы одна команда. Допускается создание триггера, реагирующего на две или на все три команды.

Аргумент WITH APPEND позволяет создавать несколько триггеров каждого типа.

При создании триггера с аргументом NOT FOR REPLICATION запрещается его запуск во время выполнения модификации таблиц механизмами репликации.

Конструкция AS sql_оператор[...n] определяет набор SQL- операторов и команд, которые будут выполнены при запуске триггера.

Отметим, что внутри триггера не допускается выполнение ряда операций, таких, например, как:

  1.  создание, изменение и удаление базы данных;
  2.  восстановление резервной копии базы данных или журнала транзакций.

Выполнение этих команд не разрешено, так как они не могут быть отменены в случае отката транзакции, в которой выполняется триггер. Это запрещение вряд ли может каким-то образом сказаться на функциональности создаваемых триггеров. Трудно найти такую ситуацию, когда, например, после изменения строки таблицы потребуется выполнить восстановление резервной копии журнала транзакций.

При выполнении команд добавления, изменения и удаления записей сервер создает две специальные таблицы: inserted и deleted. В них содержатся списки строк, которые будут вставлены или удалены по завершении транзакции. Структура таблиц inserted и deleted идентична структуре таблиц, для которой определяется триггер. Для каждого триггера создается свой комплект таблиц inserted и deleted, поэтому никакой другой триггер не сможет получить к ним доступ. В зависимости от типа операции, вызвавшей выполнение триггера, содержимое таблиц inserted и deleted может быть разным:

  1.  команда INSERT – в таблице inserted содержатся все строки, которые пользователь пытается вставить в таблицу; в таблице deleted не будет ни одной строки; после завершения триггера все строки из таблицы inserted переместятся в исходную таблицу;
  2.  команда DELETE – в таблице deleted будут содержаться все строки, которые пользователь попытается удалить; триггер может проверить каждую строку и определить, разрешено ли ее удаление; в таблице inserted не окажется ни одной строки;
  3.  команда UPDATE – при ее выполнении в таблице deleted находятся старые значения строк, которые будут удалены при успешном завершении триггера. Новые значения строк содержатся в таблице inserted. Эти строки добавятся в исходную таблицу после успешного выполнения триггера.

Для получения информации о количестве строк, которое будет изменено при успешном завершении триггера, можно использовать функцию @@ROWCOUNT; она возвращает количество строк, обработанных последней командой. Следует подчеркнуть, что триггер запускается не при попытке изменить конкретную строку, а в момент выполнения команды изменения. Одна такая команда воздействует на множество строк, поэтому триггер должен обрабатывать все эти строки.

Если триггер обнаружил, что из 100 вставляемых, изменяемых или удаляемых строк только одна не удовлетворяет тем или иным условиям, то никакая строка не будет вставлена, изменена или удалена. Такое поведение обусловлено требованиями транзакции – должны быть выполнены либо все модификации, либо ни одной.

Триггер выполняется как неявно определенная транзакция, поэтому внутри триггера допускается применение команд управления транзакциями. В частности, при обнаружении нарушения ограничений целостности для прерывания выполнения триггера и отмены всех изменений, которые пытался выполнить пользователь, необходимо использовать команду ROLLBACK TRANSACTION.

Для получения списка столбцов, измененных при выполнении команд INSERT или UPDATE, вызвавших выполнение триггера, можно использовать функцию COLUMNS_UPDATED(). Она возвращает двоичное число, каждый бит которого, начиная с младшего, соответствует одному столбцу таблицы (в порядке следования столбцов при создании таблицы). Если бит установлен в значение "1", то соответствующий столбец был изменен. Кроме того, факт изменения столбца определяет и функция UPDATE (имя_столбца).

Для удаления триггера используется команда:

DROP TRIGGER {имя_триггера} [,...n]


8 АНАЛИЗ И ОПТИМИЗАЦИЯ ЗАПРОСОВ

Ядро SQL Server Database Engine может показывать, каким образом оно переходит к таблицам и использует индексы для доступа к данным или их обработки для запроса или другой инструкции DM, например для обновления. Это называется выводом плана выполнения. Для проведения анализа медленно выполняемого запроса полезно изучить план выполнения запроса, чтобы определить причину проблемы. Дополнительные сведения о создании и использовании планов выполнения в SQL Server см. в разделах Обработка инструкций SQL и Кэширование и повторное использование плана выполнения.

Планы выполнения отображаются следующими способами.

  •  Среда SQL Server Management Studio

Отображает либо ориентировочный графический план выполнения (инструкции не выполнены), либо реальный графический план выполнения (при выполненных инструкциях), который можно просмотреть в Management Studio и сохранить.

  •  Параметры инструкции SET Transact-SQL

При использовании параметров инструкции SET Transact-SQL можно вывести ожидаемый или реальный план выполнения в формате XML или в текстовом формате.

  •  Классы событий Приложение SQL Server Profiler

Можно включить классы событий Приложение SQL Server Profiler в трассировки для получения ожидаемых или реальных планов выполнения в формате XML или в текстовом формате в результатах трассировки.

При использовании одного из этих способов отображения планов выполнения отображается наилучший план выполнения, используемый ядром Database Engine для отдельных инструкций языка DML и Transact-SQL. В этом плане содержатся сведения о процессе компиляции хранимых процедур и о вызовах хранимых процедур произвольной глубины вложенности. Например, при выполнении инструкции SELECT можно увидеть, что Database Engine выполняет просмотр таблицы для получения данных. Выполнение инструкции SELECT может также показать, что просмотр индекса будет использоваться, если Database Engine определит, что просмотр индекса является наиболее быстрым способом получения данных из таблицы.

Оптимизация запросов — это 1) функция СУБД, осуществляющая поиск оптимального плана выполнения запросов из всех возможных для заданного запроса, 2) процесс изменения запроса и/или структуры БД с целью уменьшения использования вычислительных ресурсов при выполнении запроса. Один и тот же результат может быть получен СУБД различными способами (планами выполнения запросов), которые могут существенно отличаться как по затратам ресурсов, так и по времени выполнения. Задача оптимизации заключается в нахождении оптимального способа.

В реляционной СУБД оптимальный план выполнения запроса — это такая последовательность применения операторов реляционной алгебры к исходным и промежуточным отношениям, которое для конкретного текущего состояния БД (её структуры и наполнения) может быть выполнено с минимальным использованием вычислительных ресурсов.

В настоящее время известны две стратегии поиска оптимального плана:

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

Также некоторые СУБД позволяют программисту вмешиваться в поиск оптимального плана в различной степени, от минимального влияния до полного и чёткого указания какой именно план запроса использовать.

Планы выполнения запроса сравниваются исходя из множества факторов (реализации в различных СУБД отличаются), в том числе:

  1.  потенциальное число строк, извлекаемое из каждой таблицы, получаемое из статистики;
  2.  наличие индексов;
  3.  возможность выполнения слияний (merge-join);
  4.  способ чтения записей/блоков таблиц/индексов.

В общем случае соединение выполняется вложенными циклами. Однако этот алгоритм может оказаться менее эффективен, чем специализированные алгоритмы. Например, если у сливаемых таблиц есть индексы по соединяемым полям, или одна или обе таблицы достаточно малы, чтобы быть отсортированными в памяти, то исследуется возможность выполнения слияний.


Заключение

В ходе курсовой работы изучила предметную область информационной системы магазина  электроники и бытовой техники, в ходе проекта решила следующие задачи:

  1.  Изучила предметную область информационной системы “ Магазин электроники ”
  2.  Описала актуальность выполняемого проекта
  3.  Рассмотрела вид деятельности
  4.  пределила требования к данным
  5.  Создание концептуальной модели, построение ER-модели:
  6.  Определила типы сущностей и типы связей, а также их атрибуты;
  7.  Выявляла потенциальные ключи и выбрала первичный ключ для каждой сильной сущности.
  8.  Логическое проектирование. Построение и проверка реляционной модели данных:
  9.  Исключила из концептуальной модели особенностей несовместимых с реляционной моделью;
  10.  Определила набор отношений, необходимого для представления сущностей, связей и атрибутов, выявленных в процессе концептуального моделирования;
  11.  Проверила отношения с помощью правил нормализации;
  12.  Определила ограничение целостности.
  13.  Физическое проектирование и реализация базы данных в MS SQL Server:
  14.  Определение состава и структуры таблиц;
  15.  Реализация ограничений целостности;
  16.  Проектирование и разработка пользовательских представлений.



ПРИЛОЖЕНИЕ А

СХЕМА БАЗЫ ДАННЫХ

(SQL Server Management Studio



ПРИЛОЖЕНИЕ Б

                                СХЕМА БАЗЫ ДАННЫХ

                                     (Enterprise Architect)


ПРИЛОЖЕНИЕ В

                                           SQL КОД БД


CREATE DATABASE [MEBT] ON  PRIMARY

( NAME = N'MEBT', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MEBT.mdf' , SIZE = 3032KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )

LOG ON

( NAME = N'

USE [master]

GO

/****** Object:  Database [

USE [master]

GO

/****** Object:  Database [MEBT]    Script Date: 01/05/2014 09:32:33 ******/

CREATE DATABASE [MEBT] ON  PRIMARY

( NAME = N'MEBT', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MEBT.mdf' , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )

LOG ON

( NAME = N'MEBT _log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MEBT_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)

GO

ALTER DATABASE [MEBT] SET COMPATIBILITY_LEVEL = 100

GO

IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))

begin

EXEC [MEBT].[dbo].[sp_fulltext_database] @action = 'enable'

end

GO

ALTER DATABASE [

USE [master]

GO

/****** Object:  Database [MEBT]    Script Date: 01/05/2014 09:32:33 ******/

CREATE DATABASE [MEBT] ON  PRIMARY

( NAME = N'MEBT', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MEBT.mdf' , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )

LOG ON

( NAME = N'MEBT_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MEBT_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)

GO

ALTER DATABASE [MEBT] SET COMPATIBILITY_LEVEL = 100

GO

IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))

begin

EXEC [MEBT].[dbo].[sp_fulltext_database] @action = 'enable'

end

GO

ALTER DATABASE [MEBT] SET ANSI_NULL_DEFAULT OFF

GO

ALTER DATABASE [MEBT] SET ANSI_NULLS OFF

GO

ALTER DATABASE [MEBT] SET ANSI_PADDING OFF

GO

ALTER DATABASE [MEBT] SET ANSI_WARNINGS OFF

GO

ALTER DATABASE [MEBT] SET ARITHABORT OFF

GO

ALTER DATABASE [MEBT] SET AUTO_CLOSE OFF

GO

ALTER DATABASE [MEBT] SET AUTO_CREATE_STATISTICS ON

GO

ALTER DATABASE [MEBT] SET AUTO_SHRINK OFF

GO

ALTER DATABASE [MEBT] SET AUTO_UPDATE_STATISTICS ON

GO

ALTER DATABASE [MEBT] SET CURSOR_CLOSE_ON_COMMIT OFF

GO

ALTER DATABASE [MEBT] SET CURSOR_DEFAULT  GLOBAL

GO

ALTER DATABASE [MEBT] SET CONCAT_NULL_YIELDS_NULL OFF

GO

ALTER DATABASE [MEBT] SET NUMERIC_ROUNDABORT OFF

GO

ALTER DATABASE [MEBT] SET QUOTED_IDENTIFIER OFF

GO

ALTER DATABASE [MEBT] SET RECURSIVE_TRIGGERS OFF

GO

ALTER DATABASE [MEBT] SET  DISABLE_BROKER

GO

ALTER DATABASE [MEBT] SET AUTO_UPDATE_STATISTICS_ASYNC OFF

GO

ALTER DATABASE [MEBT] SET DATE_CORRELATION_OPTIMIZATION OFF

GO

ALTER DATABASE [MEBT] SET TRUSTWORTHY OFF

GO

ALTER DATABASE [MEBT] SET ALLOW_SNAPSHOT_ISOLATION OFF

GO

ALTER DATABASE [MEBT] SET PARAMETERIZATION SIMPLE

GO

ALTER DATABASE [MEBT] SET READ_COMMITTED_SNAPSHOT OFF

GO

ALTER DATABASE [MEBT] SET HONOR_BROKER_PRIORITY OFF

GO

ALTER DATABASE [MEBT] SET  READ_WRITE

GO

ALTER DATABASE [MEBT] SET RECOVERY SIMPLE

GO

ALTER DATABASE [MEBT] SET  MULTI_USER

GO

ALTER DATABASE [MEBT] SET PAGE_VERIFY CHECKSUM

GO

ALTER DATABASE [MEBT] SET DB_CHAINING OFF

GO

USE [MEBT]

GO

/****** Object:  Table [dbo].[Wares]    Script Date: 01/05/2014 09:32:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Wares](

[Wares_ID] [float] NOT NULL,

[Wares_Name] [nvarchar](255) NULL,

CONSTRAINT [PK_Wares] PRIMARY KEY CLUSTERED

(

[Wares_ID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (1, N'Диагональ экрана')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (2, N'Частота')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (3, N'Обьём')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (4, N'Тип')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (5, N'Мощность')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (6, N'Видеокарта')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (7, N'HDD')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (8, N'Оперативная память ')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (9, N'Цвет')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (10, N'Количество портов')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (11, N'Сокет')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (12, N'Количество оборотов')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (13, N'Шум')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (14, N'Процессор')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (15, N'Тип DDR памяти ')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (16, N'Количество портов PCI')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (17, N'Количество портов SATA')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (18, N'Формат')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (19, N'Видеопамять')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (20, N'Разрешение')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (21, N'Количество видеопамяти')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (22, N'Битность')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (23, N'Формат бумаги')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (24, N'Dpi')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (25, N'Ёмкость батареи')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (26, N'Тип матрицы')

INSERT [dbo].[Wares] ([Wares_ID], [Wares_Name]) VALUES (27, N'Чип')

/****** Object:  Table [dbo].[provider]    Script Date: 01/05/2014 09:32:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Provider](

[Provider_ID] [float] NOT NULL,

[Provider_Name] [nvarchar](255) NULL,

CONSTRAINT [PK_Provider] PRIMARY KEY CLUSTERED

(

[Provider_ID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (1, N'Seagete')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (2, N'Intel')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (3, N'Acer')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (4, N'Dell')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (5, N'Hp')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (6, N'Asus')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (7, N'Dns')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (8, N'Lenovo')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (9, N'Packard Bell')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (10, N'Samsung')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (11, N'Sony')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (12, N'Toshiba')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (13, N'CoolerMaster')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (14, N'Deepcool')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (15, N'AirTone')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (16, N'Gigabyte')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (17, N'Faxconn')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (18, N'Corsair')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (19, N'AeroCool')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (20, N'Thermaltake')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (21, N'Zalman')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (22, N'AMD')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (23, N'IceHammer')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (24, N'EverCool')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (25, N'Titan')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (26, N'Scythe')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (27, N'Asrock')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (28, N'Palit')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (30, N'Sapphire')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (31, N'Hynix')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (32, N'Kingston')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (33, N'FanePower')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (34, N'FSP')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (35, N'Hiper')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (36, N'Hipro')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (37, N'OCZ')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (38, N'Hitachi')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (39, N'Western Digital')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (40, N'Kingmax')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (41, N'Sandisk')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (42, N'LG')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (43, N'Pioneer')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (44, N'Avermedia')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (45, N'iconBit')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (46, N'KWord')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (47, N'Creative')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (48, N'Sven')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (49, N'Epson')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (50, N'Cannon')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (51, N'BenQ')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (52, N'Evasion')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (53, N'ViewSonic')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (54, N'Arctic Cooling')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (55, N'GlacialTech')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (56, N'APC')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (57, N'Defender')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (58, N'Digis')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (59, N'A4Tech')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (60, N'Genius')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (61, N'Logitech')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (62, N'Microsoft')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (63, N'Razer')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (64, N'Chicony')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (65, N'Oklick')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (66, N'Dialog')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (67, N'Microlab')

/****** Object:  Table [dbo].[Sale]    Script Date: 01/05/2014 09:32:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Sale](

[Sale_ID] [float] NOT NULL,

[Sale_Name] [nvarchar](255) NULL,

CONSTRAINT [PK_Sale] PRIMARY KEY CLUSTERED

(

[Sale_ID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (1, N'SSD')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (2, N'HDD')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (3, N'Процессор')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (4, N'Видеокарта')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (5, N'Материнская плата')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (6, N'Звуковая карта ')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (7, N'Ноутбук')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (8, N'Корпус')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (9, N'Системный блок')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (10, N'Моноблок')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (11, N'Система охлаждения')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (12, N'Принтер')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (13, N'Оперативная Память')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (14, N'Монитор')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (15, N'Клавиатура')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (16, N'Мышь')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (17, N'DVD Привод')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (18, N'Сканер')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (19, N'Блок питания')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (20, N'Источник беспирибойного питания')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (21, N'Сетевой фильтр')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (22, N'Проектор')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (23, N'Экран')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (24, N'Внешний HDD')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (25, N'Колонки')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (26, N'Наушники')

/****** Object:  Table [dbo].[Manager]    Script Date: 01/05/2014 09:32:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Manager](

[Manager_ID] [float] NOT NULL,

[Sale_ID] [float] NULL,

[Manager_Name] [nvarchar](255) NULL,

[Provider_ID] [float] NULL,

[Price] [float] NOT NULL,

CONSTRAINT [PK_Manager] PRIMARY KEY CLUSTERED

(

[Manager_ID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (1, 7, N'15.6" Ноутбук Acer E1-571G-33126G50Mnks (HD) i3 3120M(2.5)/6144/500/NV GT710M 2Gb/DVD-SMulti/WiFi/Cam/MS Win8', 3, 18590)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (2, 7, N'17.3" Ноутбук Acer V3-771G-33124G50Makk (HD+) i3 3120M(2.5)/4096/500/NV GT710M 1Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 3, 19990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (3, 7, N'17.3" Ноутбук Acer V3-771G-33124G50Makk (HD+) i3 3120M(2.5)/4096/500/NV GT710M 2Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 3, 20490)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (4, 7, N'15.6" Ноутбук Asus (K55N)(HD) AMD A8-4500M(1.9)/6144/750/AMD HD7640/DVD-SMulti/WiFi/Cam/MS Win8', 6, 19590)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (5, 7, N'15.6" Ноутбук Asus (K55Vd)(HD) i5 3210M(2.5)/6144/750/NV GT610M 2Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 6, 22990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (6, 7, N'17.3" Ноутбук Asus (X75VC)(HD+) i3 3120M(2.5)/4096/500/NV GT720M 2Gb/DVD-SMulti/WiFi/Cam/MS Win8', 6, 21490)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (7, 7, N'15.6" Ноутбук DELL Inspiron 3521-6306 (HD) i3 3217U(1.8)/4096/500/AMD HD7670M 1Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 4, 16990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (8, 7, N'17.3" Ноутбук DELL Inspiron 5737-8263 (FHD) i7 4500U(1.8)/16384/1TB/ATI HD8870M 2Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 4, 36990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (9, 7, N'17.3" Ноутбук DELL Inspiron N7720-6167 (FHD) i7 3630QM(2.4)/8192/1TB/NV GT650 2Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 4, 33990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (10, 7, N'11.6" Ноутбук HP Pavilion 11-e000er (HD/Touch) AMD A4-1250(1.0)/4096/500/ATI HD8210/DVS-SMulti/WiFi/BT/Cam/MS Win8', 5, 16990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (11, 7, N'15.6" Ноутбук HP 2000-2d50SR (HD) Celeron 1000M(1.8)/2048/320/Intel HD/DVD-SMulti/WiFi/BT/Cam/Dos', 5, 10690)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (12, 7, N'17.3" Ноутбук HP Pavilion 17-e062sr (HD+) i5 3230M(2.6)/6144/500/AMD HD8670 1Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 5, 24990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (13, 7, N'15.6" Ноутбук Lenovo B590 (HD) i3 2348M(2.3)/4096/500/NV GT610M 1Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 8, 17250)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (14, 7, N'15.6" Ноутбук Lenovo B590 (HD) i5 3230M(2.6)/4096/500/NV GT610M 1Gb/DVD-SMulti/WiFi/BT/Cam/MS Win8', 8, 18990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (15, 7, N'15.6" Ноутбук Lenovo B590 (HD) i5 3230M(2.6)/4096/500/NV GT720M 1Gb/DVD-SMulti/WiFi/BT/Cam/Dos', 8, 18990)

INSERT [dbo].[Manager] ([Manager_ID], [Sale_ID], [Manager_Name], [Provider_ID], [Price]) VALUES (16, 7, N'17.3" Ноутбук Acer-Packard Bell ENLV11HC-33126G50Mnks (HD+) i3 3120M(2.5)/6144/500/NV GT710M 2Gb/DVD-SMulti/WiFi/Cam/MS Win8', 9, 20490)

INSERT [dbo].[Manager] ([Manager_ID], [

:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Order](

[Order_ID] [float] NOT NULL,

[Manager_ID] [float] NULL,

[Wares_ID] [float] NULL,

[Value] [nvarchar](255) NULL,

CONSTRAINT [PK_Order] PRIMARY KEY CLUSTERED

(

[Order_ID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (1, 1, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (2, 2, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (3, 3, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (4, 4, 14, N'A8-4500M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (5, 5, 14, N'i5 3210M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (6, 6, 14, N' i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (7, 7, 14, N' i3 3217U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (8, 8, 14, N' i7 4500U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (9, 9, 14, N'i7 3630QM')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (10, 10, 14, N'AMD A4-1250')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (11, 11, 14, N'Celeron 1000M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (12, 12, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (13, 13, 14, N'i3 2348M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (14, 14, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (15, 15, 14, N' i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (16, 16, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (17, 17, 14, N'i3 3110M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (18, 18, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (19, 19, 14, N' i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (20, 20, 14, N'i3 3110M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (21, 21, 14, N'Pentium B997')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (22, 22, 14, N'Pentium 2117U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (23, 23, 14, N' Intel i3 3120')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (24, 24, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (25, 25, 14, N' i5 3337U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (26, 26, 14, N' i5 3337U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (27, 1, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (28, 2, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (29, 3, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (30, 4, 2, N'1.9')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (31, 5, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (32, 6, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (33, 7, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (34, 8, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (35, 9, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (36, 10, 2, N'1')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (37, 11, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (38, 12, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (39, 13, 2, N'2.3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (40, 14, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (41, 15, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (42, 16, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (43, 17, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (44, 18, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (45, 19, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (46, 20, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (47, 21, 2, N'1.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (48, 22, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (49, 23, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (50, 24, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (51, 25, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (52, 26, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (53, 1, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (54, 2, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (55, 3, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (56, 4, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (57, 5, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (58, 6, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (59, 7, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (60, 8, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (61, 9, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (62, 10, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (63, 11, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (64, 12, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (65, 13, 7, N'320')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (66, 14, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (67, 15, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (68, 16, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (69, 17, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (70, 18, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (71, 19, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (72, 20, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (73, 21, 7, N'320')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (74, 22, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (75, 23, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (76, 24, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (77, 25, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (78, 26, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (79, 27, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (80, 28, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (81, 29, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (82, 30, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (83, 31, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (84, 32, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (85, 33, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (86, 34, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (87, 35, 2, N'3.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (88, 36, 2, N'3.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (89, 37, 2, N'2.9')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (90, 38, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (91, 39, 2, N'3.3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (92, 40, 2, N'3.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (93, 41, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (94, 42, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (95, 43, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (96, 44, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (97, 45, 2, N'3.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (98, 46, 2, N'3.0')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (99, 35, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (100, 36, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (101, 37, 11, N'AM3')

GO

print 'Processed 100 total records'

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (102, 38, 11, N'775')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (103, 39, 11

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (186, 97, 20, N' 800x600')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (187, 98, 20, N' 800x600')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (188, 99, 20, N'1280x800')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (189, 100, 1, N'200*200')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (190, 101, 1, N'24"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (191, 102, 1, N'27"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (192, 103, 1, N'24"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (193, 104, 1, N'18.5"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (194, 105, 1, N'19.5"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (195, 106, 1, N'23"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (196, 107, 1, N'23"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (197, 108, 1, N'21.5"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (198, 109, 1, N'21.5"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (199, 110, 1, N'23"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (200, 111, 1, N'23"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (201, 112, 1, N'23"')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (202, 113, 1, N'18.5"')

GO

print

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (36, N'Hipro')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (37, N'OCZ')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (38, N'Hitachi')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (39, N'Western Digital')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (40, N'Kingmax')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (41, N'Sandisk')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (42, N'LG')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (43, N'Pioneer')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (44, N'Avermedia')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (45, N'iconBit')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (46, N'KWord')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (47, N'Creative')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (48, N'Sven')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (49, N'Epson')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (50, N'Cannon')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (51, N'BenQ')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (52, N'Evasion')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (53, N'ViewSonic')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (54, N'Arctic Cooling')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (55, N'GlacialTech')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (56, N'APC')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (57, N'Defender')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (58, N'Digis')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (59, N'A4Tech')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (60, N'Genius')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (61, N'Logitech')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (62, N'Microsoft')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (63, N'Razer')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (64, N'Chicony')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (65, N'Oklick')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (66, N'Dialog')

INSERT [dbo].[Provider] ([Provider_ID], [Provider_Name]) VALUES (67, N'Microlab')

/****** Object:  Table [dbo].[Sale]    Script Date: 01/05/2014 09:32:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Sale](

[Sale_ID] [float] NOT NULL,

[Sale_Name] [nvarchar](255) NULL,

CONSTRAINT [PK_Sale] PRIMARY KEY CLUSTERED

(

[Sale_ID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (1, N'SSD')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (2, N'HDD')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (3, N'Процессор')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (4, N'Видеокарта')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (5, N'Материнская плата')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (6, N'Звуковая карта ')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (7, N'Ноутбук')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (8, N'Корпус')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (9, N'Системный блок')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (10, N'Моноблок')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (11, N'Система охлаждения')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (12, N'Принтер')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (13, N'Оперативная Память')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (14, N'Монитор')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (15, N'Клавиатура')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (16, N'Мышь')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (17, N'DVD Привод')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (18, N'Сканер')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (19, N'Блок питания')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (20, N'Источник беспирибойного питания')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (21, N'Сетевой фильтр')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (22, N'Проектор')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (23, N'Экран')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (24, N'Внешний HDD')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (25, N'Колонки')

INSERT [dbo].[Sale] ([Sale_ID], [Sale_Name]) VALUES (26, N'Наушники')

/****** Object:  Table [dbo].[Manager]    Script Date: 01/05/2014 09:32:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Manager](

[Manager_ID] [float] NOT NULL,

[Sale_ID] [float] NULL,

[Manager_Name] [nvarchar](255) NULL,

[Provider_ID] [float] NULL,

[Price] [float] NOT NULL,

CONSTRAINT [PK_Manager] PRIMARY KEY CLUSTERED

(

 

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (1, 1, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (2, 2, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (3, 3, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (4, 4, 14, N'A8-4500M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (5, 5, 14, N'i5 3210M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (6, 6, 14, N' i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (7, 7, 14, N' i3 3217U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (8, 8, 14, N' i7 4500U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (9, 9, 14, N'i7 3630QM')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (10, 10, 14, N'AMD A4-1250')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (11, 11, 14, N'Celeron 1000M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (12, 12, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (13, 13, 14, N'i3 2348M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (14, 14, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (15, 15, 14, N' i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (16, 16, 14, N'i3 3120M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (17, 17, 14, N'i3 3110M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (18, 18, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (19, 19, 14, N' i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (20, 20, 14, N'i3 3110M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (21, 21, 14, N'Pentium B997')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (22, 22, 14, N'Pentium 2117U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (23, 23, 14, N' Intel i3 3120')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (24, 24, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (25, 25, 14, N' i5 3337U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (26, 26, 14, N' i5 3337U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (27, 1, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (28, 2, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (29, 3, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (30, 4, 2, N'1.9')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (31, 5, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (32, 6, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (33, 7, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (34, 8, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (35, 9, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (36, 10, 2, N'1')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (37, 11, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (38, 12, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (39, 13, 2, N'2.3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (40, 14, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (41, 15, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (42, 16, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (43, 17, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (44, 18, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (45, 19, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (46, 20, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (47, 21, 2, N'1.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (48, 22, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (49, 23, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (50, 24, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (51, 25, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (52, 26, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (53, 1, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (54, 2, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (55, 3, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (56, 4, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (57, 5, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (58, 6, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (59, 7, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (60, 8, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (61, 9, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (62, 10, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (63, 11, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (64, 12, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (65, 13, 7, N'320')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (66, 14, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (67, 15, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (68, 16, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (69, 17, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (70, 18, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (71, 19, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (72, 20, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (73, 21, 7, N'320')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (74, 22, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (75, 23, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (76, 24, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (77, 25, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (78, 26, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (79, 27, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (80, 28, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (81, 29, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (82, 30, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (83, 31, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (84, 32, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (85, 33, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (86, 34, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (87, 35, 2, N'3.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (88, 36, 2, N'3.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (89, 37, 2, N'2.9')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (90, 38, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (91, 39, 2, N'3.3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (92, 40, 2, N'3.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (93, 41, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (94, 42, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (95, 43, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (96, 44, 2, N'3.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (97, 45, 2, N'3.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (98, 46, 2, N'3.0')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (99, 35, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (100, 36, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (101, 37, 11, N'AM3')

GO

print 'Processed 100 total records'

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (102, 38, 11, N'775')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (103, 39, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (104, 40, 11, N'1150')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (105, 41, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (106, 42, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (107, 43, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (108, 44, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (109, 45, 11, N'1150')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (110, 46, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (111, 47, 12, N'1350')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (112, 48, 12, N'2000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (113, 49, 12, N'1500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (114, 50, 12, N'2800')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (115, 51, 12, N'2500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (116, 52, 12, N'1600')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (117, 53, 12, N'1500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (118, 47, 13, N'24')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (119, 48, 13, N'28')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (120, 49, 13, N'27')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (121, 50, 13, N'31')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (122, 51, 13, N'28')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (123, 52, 13, N'29')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (124, 53, 13, N'25')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (125, 54, 11, N'LGA1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (126, 55, 11, N'LGA1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (127, 56, 11, N'AM3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (128, 57, 11, N'AM3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (129, 58, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (130, 59, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (131, 60, 11, N'1150')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (132, 61, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (133, 62, 11, N'1155')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (134, 63, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (135, 64, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (136, 65, 11, N'FM2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (137, 54, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (138, 55, 17, N'8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (139, 56, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (140, 57, 17, N'4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (141, 58, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (142, 59, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (143, 60, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (144, 61, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (145, 62, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (146, 63, 17, N'7')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (147, 64, 17, N'7')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (148, 65, 17, N'6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (149, 54, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (150, 55, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (151, 56, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (152, 57, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (153, 58, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (154, 59, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (155, 60, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (156, 61, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (157, 62, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (158, 63, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (159, 64, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (160, 65, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (161, 75, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (162, 76, 15, N'DDR')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (163, 77, 15, N'DDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (164, 75, 3, N'4096')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (165, 76, 3, N'1024')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (166, 77, 3, N'4096')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (167, 78, 5, N'600')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (168, 79, 5, N'300')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value])

)

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (244, 155, 4, N'PCI')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (245, 156, 4, N'PCI')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (246, 157, 4, N'DVD±RW')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (257, 162, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (258, 163, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (259, 164, 7, N' 500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (260, 159, 8, N'8000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (261, 160, 8, N'8000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (262, 161, 8, N'8000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (263, 162, 8, N'4000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (264, 163, 8, N'4000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (265, 164, 8, N' 4000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (266, 66, 27, N'AMD Radeon HD6670')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (267, 67, 27, N'GeForce GTX 770')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (268, 68, 27, N'GeForce 210')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (269, 69, 27, N'GeForce 210')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (270, 70, 27, N'GeForce GT 610')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (271, 71, 27, N'GeForce 210')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (272, 72, 27, N'GeForce GT 430')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (273, 73, 27, N'AMD Radeon HD6450')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (274, 74, 27, N'AMD Radeon HD6570')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (275, 66, 19, N'2048 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (276, 67, 19, N'2048 GDDR5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (277, 68, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (278, 69, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (279, 70, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (280, 71, 19, N'512 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (281, 72, 19, N'2048 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (282, 73, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (283, 74, 19, N'1024 GDDR3')

/****** Object:  ForeignKey [FK_Sale_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Manager]  WITH CHECK ADD  CONSTRAINT [FK_Sale_ID] FOREIGN KEY([Sale_ID])

REFERENCES [dbo].[Sale] ([Sale_ID])

GO

ALTER TABLE [dbo].[Manager] CHECK CONSTRAINT [FK_Sale_ID]

GO

/****** Object:  ForeignKey [FK_Provider_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Manager]  WITH CHECK ADD  CONSTRAINT [FK_Provider_ID] FOREIGN KEY([Provider_ID])

REFERENCES [dbo].[Provider] ([Provider_ID])

GO

ALTER TABLE [dbo].[Manager] CHECK CONSTRAINT [FK_Provider_ID]

GO

/****** Object:  ForeignKey [FK_Wares_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Wares_ID] FOREIGN KEY([Wares_ID])

REFERENCES [dbo].[Wares] ([Wares_ID])

GO

ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Wares_ID]

GO

/****** Object:  ForeignKey [FK_Manager_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Manager_ID] FOREIGN KEY([Manager_ID])

REFERENCES [dbo].[Manager] ([Manager_ID])

GO

ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Manager_ID]

GO

_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\MEBT_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)

GO

ALTER DATABASE [MEBT] SET COMPATIBILITY_LEVEL = 100

GO

IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))

begin

EXEC [MEBT].[dbo].[sp_fulltext_database] @action = 'enable'

end

GO

ALTER DATABASE [MEBT] SET ANSI_NULL_DEFAULT OFF

GO

ALTER DATABASE [MEBT] SET ANSI_NULLS OFF

GO

ALTER DATABASE [MEBT] SET ANSI_PADDING OFF

GO

ALTER DATABASE [MEBT] SET ANSI_WARNINGS OFF

GO

ALTER DATABASE [MEBT] SET ARITHABORT OFF

GO

ALTER DATABASE [MEBT] SET AUTO_CLOSE OFF

GO

ALTER DATABASE [MEBT] SET AUTO_CREATE_STATISTICS ON

GO

ALTER DATABASE [MEBT] SET AUTO_SHRINK OFF

GO

ALTER DATABASE [MEBT] SET AUTO_UPDATE_STATISTICS ON

GO

ALTER DATABASE [MEBT] SET CURSOR_CLOSE_ON_COMMIT OFF

GO

ALTER DATABASE [MEBT] SET CURSOR_DEFAULT  GLOBAL

GO

ALTER DATABASE [MEBT] SET CONCAT_NULL_YIELDS_NULL OFF

GO

ALTER DATABASE [MEBT] SET NUMERIC_ROUNDABORT OFF

GO

22, 14, N'Pentium 2117U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (23, 23, 14, N' Intel i3 3120')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (24, 24, 14, N'i5 3230M')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (25, 25, 14, N' i5 3337U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (26, 26, 14, N' i5 3337U')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (27, 1, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (28, 2, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (29, 3, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (30, 4, 2, N'1.9')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (31, 5, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (32, 6, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (33, 7, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (34, 8, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (35, 9, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (36, 10, 2, N'1')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (37, 11, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (38, 12, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (39, 13, 2, N'2.3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (40, 14, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (41, 15, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (42, 16, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (43, 17, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (44, 18, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (45, 19, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (46, 20, 2, N'2.4')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (47, 21, 2, N'1.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (48, 22, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (49, 23, 2, N'2.5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (50, 24, 2, N'2.6')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (51, 25, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (52, 26, 2, N'1.8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (53, 1, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (54, 2, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (55, 3, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (56, 4, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (57, 5, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (58, 6, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (59, 7, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (60, 8, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (61, 9, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (62, 10, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (63, 11, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (64, 12, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (65, 13, 7, N'320')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (66, 14, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (67, 15, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (68, 16, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (69, 17, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (70, 18, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (71, 19, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (72, 20, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (73, 21, 7, N'320')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (74, 22, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (75, 23, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (76, 24, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (77, 25, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (78, 26, 7, N'750')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (79, 27, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (80, 28, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (81, 29, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (82, 30, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (83, 31, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (84, 32, 4, N'ATX')

INSERT [dbo].[Order] ([Order_ID]

]) VALUES (204, 115, 3, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (205, 116, 3, N'1500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (206, 117, 24, N'2000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (207, 118, 24, N'360')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (208, 119, 24, N'2000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (209, 120, 24, N'2000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (210, 121, 24, N'3000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (211, 122, 24, N'1200')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (212, 123, 24, N'1200')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (213, 124, 24, N'2000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (214, 125, 24, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (215, 126, 24, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (216, 127, 24, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (217, 128, 24, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (218, 129, 24, N'3600')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (219, 130, 24, N'1200')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (220, 131, 4, N'PS/2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (221, 132, 4, N'PS/2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (222, 133, 4, N'USB')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (223, 134, 4, N'PS/2')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (224, 135, 4, N'USB')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (225, 136, 4, N'USB')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (226, 137, 4, N'USB')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (227, 138, 4, N'USB')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (228, 139, 4, N'USB')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (229, 140, 4, N'USB')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (230, 141, 5, N'20')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (231, 142, 5, N'22')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (232, 143, 5, N'30')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (233, 144, 5, N'70')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (234, 145, 5, N'8')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (235, 146, 5, N'180')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (236, 147, 5, N'24')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (237, 148, 5, N'40')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (238, 149, 5, N'62')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (239, 150, 5, N'75')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (240, 151, 5, N'50')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (241, 152, 5, N'50')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (242, 153, 5, N'10')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (243, 154, 5, N'10')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (244, 155, 4, N'PCI')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (245, 156, 4, N'PCI')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (246, 157, 4, N'DVD±RW')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (247, 158, 4, N'DVD±RW')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (248, 159, 14, N'FX-4170 (4.2 GHz)')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (249, 160, 14, N'i5-3550 (3.3GHz)')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (250, 161, 14, N'i5-4670 (3.4 GHz)')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (251, 162, 14, N'i5-3330 (3.0GHz)')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (252, 163, 14, N'Pentium G2010 (2.8 GHz)')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (253, 164, 14, N' Pentium G860 (3.0 GHz)')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (254, 159, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (255, 160, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (256, 161, 7, N'1000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (257, 162, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (258, 163, 7, N'500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (259, 164, 7, N' 500')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (260, 159, 8, N'8000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (261, 160, 8, N'8000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (262, 161, 8, N'8000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (263, 162, 8, N'4000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (264, 163, 8, N'4000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (265, 164, 8, N' 4000')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (266, 66, 27, N'AMD Radeon HD6670')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (267, 67, 27, N'GeForce GTX 770')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (268, 68, 27, N'GeForce 210')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (269, 69, 27, N'GeForce 210')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (270, 70, 27, N'GeForce GT 610')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (271, 71, 27, N'GeForce 210')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (272, 72, 27, N'GeForce GT 430')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (273, 73, 27, N'AMD Radeon HD6450')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (274, 74, 27, N'AMD Radeon HD6570')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (275, 66, 19, N'2048 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (276, 67, 19, N'2048 GDDR5')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (277, 68, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (278, 69, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (279, 70, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (280, 71, 19, N'512 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (281, 72, 19, N'2048 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (282, 73, 19, N'1024 GDDR3')

INSERT [dbo].[Order] ([Order_ID], [Manager_ID], [Wares_ID], [Value]) VALUES (283, 74, 19, N'1024 GDDR3')

/****** Object:  ForeignKey [FK_Sale_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Manager]  WITH CHECK ADD  CONSTRAINT [FK_Sale_ID] FOREIGN KEY([Sale_ID])

REFERENCES [dbo].[Sale] ([Sale_ID])

GO

ALTER TABLE [dbo].[Manager] CHECK CONSTRAINT [FK_Sale_ID]

GO

/****** Object:  ForeignKey [FK_Provider_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Manager]  WITH CHECK ADD  CONSTRAINT [FK_Provider_ID] FOREIGN KEY([Provider_ID])

REFERENCES [dbo].[Provider] ([Provider_ID])

GO

ALTER TABLE [dbo].[Manager] CHECK CONSTRAINT [FK_Provider_ID]

GO

/****** Object:  ForeignKey [FK_Wares_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Wares_ID] FOREIGN KEY([Wares_ID])

REFERENCES [dbo].[Wares] ([Wares_ID])

GO

ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Wares_ID]

GO

/****** Object:  ForeignKey [FK_Manager_ID]    Script Date: 01/05/2014 09:32:33 ******/

ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Manager_ID] FOREIGN KEY([Manager_ID])

REFERENCES [dbo].[Manager] ([Manager_ID])

GO

ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Manager_ID]

GO

78

PAGE   \* MERGEFORMAT2


 

А также другие работы, которые могут Вас заинтересовать

23407. Імітаційна модель ПК 77 KB
  Формування у студентів інженерно-технічного кругозору, методами імітаційного моделювання для побудови комп’ютерних систем та мереж, вміння ставити та вирішувати складні інженерні задачі, проводити аналіз, аргументовано робити висновки.
23408. Етапи розробки комп’ютерної імітаційної моделі системи 106 KB
  Такие системы являются продуктом мышления человека. Примером абстрактных систем могут служить формальные математические модели системы математических уравнений системы счисления теории системы принципов и взглядов в той или иной области т. Закрытых систем в природе не существует и в этом плане они могут рассматриваться как абстрактные системы. Такие модели весьма удобны и эффективны но не все реальные системы строго могут описываться в рамках абстрактных математических моделей.
23409. Мови та інструментальні засоби ІМ і CASE-технології 160.5 KB
  Вивчення основних понять моделювання комп’ютерних мереж, ознайомлення з поняттями системи та моделі, співвідношенням між моделлю та системою, класифікацією моделей, видами моделей, технологію моделювання
23410. Сучасні інструментальні засоби ІМ 229.5 KB
  Одним из наиболее эффективных современных инструментов имитационного моделирования является средство Arena разработчик компания Systems Modeling. Пакет Arena позволяет строить ИМ систем проигрывать их и анализировать результаты имитации. Arena снабжена удобным объектноориентированным интерфейсом и обладает возможностями адаптации к различным предметным областям. Основа технологий применяемых в Arena язык SIM AN и система Cinema Animation [10].
23411. Моделювання систем та мереж зв’язку на GPSS 185.5 KB
  Кожний оператор GPSS PC ставиться до одному із чотирьох типів: операториблоки оператори визначення об'єктів що управляють оператори й операторикоманди.ОператориБлоки формують логіку моделі. В GPSS PC є близько 50 різних видів блоків кожний з яких виконує свою конкретну функцію. За кожним з таких блоків коштує відповідна підпрограма транслятора а операнды кожного блоку служать параметрами цієї підпрограми.
23412. Сучасний етап розвитку імітаційного моделювання 168 KB
  Із розвитком високопродуктивних обчислювальних систем розширились можливості імітаційного моделювання великомасштабних моделей. Основні переваги використання методів і засобів паралельного імітаційного моделювання: підвищення швидкодії імітаційних програм
23413. Загальні положення методології дослідження та проектування складних систем 80 KB
  Элемент простейшая неделимая часть системы отвечающая предельно детальному рассмотрению системы в рамках решаемой задачи. Целостность эмерджентность важнейшая характеристика системы которая проявляется в том что в процессе взаимодействия элементов входящих в состав системы появляется принципиально новое качество свойство которым не обладает ни один из входящих в систему элементов.Целевое назначение системы цель системы желаемый и потенциально достижимый результат который может быть получен в процессе функционирования...
23414. Формалізація та моделювання 161 KB
  Формализация и моделирование Модель это искусственно создаваемый объект заменяющий некоторый объект реального мира объект моделирования и воспроизводящий ограниченное число его свойств. Понятие модели относится к фундаментальным общенаучным понятиям а моделирование это метод познания действительности используемый различными науками. Объект моделирования широкое понятие включающее объекты живой или неживой природы процессы и явления действительности. В экспериментальных научных исследованиях используются натурные модели которые...
23415. Дослідження роботи дешифратора (демультиплексора) 271 KB
  Мета роботи: Ознайомитися з роботою дешифратора демультиплексора у різних режимах роботи. Практично перевірити таблиці істиності дешифратора демультиплексора. Зібрати схему для дослідження дешифратора 3х8 в основному режимі за рис.