Добавил:
rushevamar@mail.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD_Laboratornyi_774_praktikum.doc
Скачиваний:
28
Добавлен:
17.06.2021
Размер:
921.09 Кб
Скачать

Задание к работе

Раздел I. Создание базы данных и ее объектов

1. Создайте на диске D в папке Work новую папку с именем вашей группы, дополненным двухзначным номером, под которым ваша фамилия фигурирует в списке группы. Имя этой папки в дальнейшем будет указываться как X7230XXX.

2. При помощи пользовательского меню Windows запустите основной инструмент администрирования SQL Server 2005 – утилиту SQL Server Management Studio. При этом вас попросят подключиться к какому-либо серверу баз данных SQL Server. В качестве имени сервера укажите имя локального компьютера, дополненное суффиксом \SQLEXPRESS (предполагается, что на компьютере установлена сокращенная редакция SQL Server 2005 – Express Edition).

3. На панели Registered Servers будет виден список всех SQL-серверов, к которым имеет доступ утилита SQL Server Management Studio, причем SQL-серверы могут быть сгруппированы в так называемые серверные группы в произвольном порядке. Кроме SQL-серверов (относящихся к типу Database Engine) здесь же могут отображаться и другие типы серверов: серверы анализа (Analysis Services Server), серверы преобразования данных (Integration Services Server), серверы отчетов (Reporting Services Server) и серверы для мобильных устройств (SQL Server Mobile). Однако при первом запуске будет виден лишь один SQL-сервер с именем ИмяКомпьютера\sqlexpress.

Создайте новую серверную группу с именем Minsk DB - Version 2005 и переместите в нее SQL-сервер с именем ИмяКомпьютера\sqlexpress.

4. На панели Object Explorer в дереве структуры раскройте папку Databases и далее папку System Databases. В результате будут видны 4 системные базы данных (master, model, msdb, tempdb), предназначенные для хранения метаданных и временных объектов.

Создайте новую базу данных. Для этого выберите в контекстном (т.е. вызываемом правой кнопкой мыши) меню папки Databases команду New Database.

В появившемся окне New Database перейдите на страницу Filegroups и добавьте еще одно имя группы файлов SECONDARY.

Переключитесь на страницу General и введите имя базы данных (Database name) как СкладХХХ, где ХХХ – цифры, первая из которых есть последняя цифра в номере вашей группы, а следующие две цифры - ваш номер в списке группы.

Далее в таблице Database files измените первую строку следующим образом. В столбце File Name укажите значение СкладХХХ_data. В столбце Initial Size установите начальный размер файла данных равным 5 MB. В столбце Autogrowth нажмите справа кнопку с тремя точками и выполните следующую настройку: файл при необходимости должен автоматически наращиваться на 3 MB и его размер ограничивается сверху величиной в 75 MB. В столбце Path нажмите справа кнопку с тремя точками и выберите с помощью подсветки путь D:\Work\X7230ХХХ.

После этого заполните вторую строку таблицы следующим образом. В столбце File Name укажите значение СкладХХХ_log. В столбце Initial Size установите начальный размер файла журнала транзакций равным 1 MB. В столбце Autogrowth нажмите кнопку с тремя точками и выполните следующую настройку: файл должен автоматически наращиваться на 20% и его размер ограничивается сверху величиной в 30 MB. В столбце Path укажите путь D:\Work\X7230ХХХ.

Теперь добавьте в таблицу Database files новую строку и заполните ее следующим образом: имя файла – СкладХХХ_data2; тип файла – Data; группа файлов - SECONDARY; начальный размер – 3 MB; файл должен наращиваться на 15% и ограничен 50 MB; размещение – D:\Work\X7230ХХХ.

Добавьте в таблицу Database files еще одну новую строку и заполните ее следующим образом: имя файла – СкладХХХ_data3; тип файла – Data; группа файлов - SECONDARY; начальный размер – 4 MB; файл должен наращиваться на 4 MB и его рост не ограничивается; размещение – D:\Work\X7230ХХХ.

Закройте окно New Database, нажав кнопку «ОК». Убедитесь, что созданная база данных появилась в папке Databases панели Object Explorer.

Примечание. По умолчанию файлы данных и журнала транзакций размещаются в папках, указанных в полях Default data directory и Default log directory соответственно, которые расположены на странице Database Settings окна свойств сервера.

5. Создайте в базе данных СкладХХХ 6 таблиц со столбцами, описание которых приведено ниже.

Для создания таблицы нужно на панели Object Explorer раскрыть элемент СкладХХХ и затем в контекстном меню появившейся папки Tables выбрать команду New Table, открывая тем самым конструктор таблицы.

1) таблица Регион

Имя столбца

Тип данных

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

Разрешить значения Null

КодРегиона

Страна

Область

Город

Адрес

Телефон

Факс

int

nvarchar(20)

nvarchar(20)

nvarchar(20)

nvarchar(50)

char(15)

char(15)

Да

Да


2) таблица Поставщик

Имя столбца

Тип данных

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

Разрешить значение Null

КодПоставщика

ИмяПоставщика

УсловияОплаты

КодРегиона

Заметки

int

nvarchar(40)

varchar(30)

int

nvarchar(MAX)

Да

Да

Да

Да


3) таблица Клиент

Имя столбца

Тип данных

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

Разрешить значение Null

КодКлиента

ИмяКлиента

ФИОРуководителя

КодРегиона

int

nvarchar(40)

nvarchar(60)

int

Да

Да

Да


4) таблица Валюта

Имя столбца

Тип данных

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

Разрешить значение Null

КодВалюты

ИмяВалюты

ШагОкругления

КурсВалюты

char(3)

varchar(30)

numeric(10,4)

smallmoney

Да

Да


5) таблица Товар

Имя столбца

Тип данных

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

Разрешить значение Null

КодТовара

Наименование

ЕдиницаИзм

Цена

КодВалюты

Расфасован

int

nvarchar(50)

char(10)

money

char(3)

char(3)

Да

Да

Да

Да


6) таблица Заказ

Имя столбца

Тип данных

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

Разрешить значение Null

КодЗаказа

КодКлиента

КодТовара

Количество

ДатаЗаказа

СрокПоставки

КодПоставщика

int

int

int

numeric(12,3)

datetime

datetime

int

Да

Да

Да

Да

Да

Да

Да


6. В таблице Клиент столбец КодКлиента и в таблице Заказ столбец КодЗаказа сделайте автоинкрементными столбцами, т.е. при добавлении новой строки значения этих столбцов будут устанавливаться автоматически наращиванием (обычно на единицу) предыдущих значений. Соответствующее свойство столбца называется Identity Specification (см. вкладку Column Properties в нижней части экрана); здесь же можно, в частности, указать начальное значение и шаг приращения.

7. Задайте для столбцов значения по умолчанию с помощью свойства Default Value or Binding (см. вкладку Column Properties в нижней части экрана). Значением по умолчанию для столбца Страна будет 'Беларусь'; для столбца УсловияОплаты'Предоплата'; для столбца ШагОкругления – 0.01; для столбца ЕдиницаИзм'штука'; для столбца КодВалюты (из таблицы Товар) – 'BYR'; для столбца ДатаЗаказаgetdate(), т.е. текущая дата; для столбца СрокПоставкиgetdate() + 14, т.е. через две недели от текущей даты; для столбца Расфасован'Нет'.

8. Создайте уникальные (unique) индексы, разместив их в группе файлов SECONDARY:

Имя таблицы

Имя индекса

Имена столбцов индекса

Поставщик

Клиент

Валюта

Товар

Регион

Регион

UIX_Поставщик

UIX_Клиент

UIX_Валюта

UIX_Товар

UIX_Регион

UIX_Регион2

ИмяПоставщика

ИмяКлиента

ИмяВалюты

Наименование

Страна, Область, Город, Адрес

Факс


Примечание. Для создания индекса нужно в окне конструктора соответствующей таблицы вызвать правой кнопкой мыши контекстное меню и выбрать в нем команду Indexes and Keys (или нажать соответствующую кнопку на панели инструментов).

  1. Создайте неуникальные индексы, также разместив их в группе файлов SECONDARY:

Имя таблицы

Имя индекса

Имена столбцов индекса

Регион

Товар

Заказ

IX_Регион

IX_Товар

IX_Заказ

Страна, Город

ЕдиницаИзм, Наименование

ДатаЗаказа


10. Установите для столбцов проверочные ограничения. Для столбцов Цена, Количество и КурсВалюты ограничение заключается в выборе только неотрицательных значений: <имя_поля> >= 0; для столбца ШагОкругления – в выборе одного из трех возможных значений: ШагОкругления IN (50, 1, 0.01); для столбца Расфасован – в выборе одного из двух возможных значений: Расфасован IN ('Нет', 'Да').

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

  1. Установите между таблицами связи типа 1:М, которые задаются строками следующей таблицы:

Имя связи

Родительская таблица / Пер-

вичный ключ

Дочерняя таблица / Вне-

шний ключ

FK_Поставщик_Регион

FK_Клиент_Регион

FK_Товар_Валюта

FK_Заказ_Товар

FK_Заказ_Клиент

FK_Заказ_Поставщик

Регион / КодРегиона

Регион / КодРегиона

Валюта / КодВалюты

Товар / КодТовара

Клиент / КодКлиента

Поставщик / КодПоставщика

Поставщик / КодРегиона

Клиент / КодРегиона

Товар / КодВалюты

Заказ / КодТовара

Заказ / КодКлиента

Заказ / КодПоставщика

При этом связи FK_Заказ_Товар и FK_Заказ_Клиент должны обеспечивать каскадное обновление и удаление данных.

Примечание. Для установления связи между родительской и дочерней таблицами нужно раскрыть элемент дочерней таблицы и в контекстном меню появившейся папки Keys выбрать команду New Key.

12. Создайте диаграмму для базы данных СкладХХХ. Для этого в контекстном меню папки Database Diagrams выберите команду New Database Diagram. В диаграмму включите все таблицы, входящие в базу данных СкладХХХ.

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

13. Введите по несколько строк данных сначала в таблицы Валюта и Регион, а затем в таблицы Товар, Поставщик и Клиент. После этого введите не менее 10 строк данных в таблицу Заказ.

Примечание. Для ввода данных в таблицу нужно в ее контекстном меню выбрать команду Open Table.

14. Создайте представление (View) на основе столбцов, описание которых приведено ниже.

Столбец

Таблица

Сортировка

Наименование

Количество

ЕдиницаИзм

ИмяПоставщика

Товар

Заказ

Товар

Поставщик

По возрастанию

По убыванию


Примечание. Для создания представления нужно в контекстном меню папки Views выбрать команду New View. Далее необходимо указать нужные таблицы и затем в появившемся окне конструктора представлений, путем расстановки флажков в выбранных таблицах, отобрать нужные поля. Затем для двух из них нужно указать тип сортировки.

Сохраните созданное представление под именем Запрос1, после чего закройте окно конструктора.

15. Откройте и просмотрите на экране данные, выбираемые посредством представления Запрос1. Для этого в его контекстном меню выберите команду Open View.

16. Отсоедините базу данных СкладХХХ, выбрав в ее контекстном меню команду TasksDetach Database. Убедитесь, что база данных СкладХХХ исчезла из папки Databases. Теперь файлы этой базы данных можно, при необходимости, переместить в другую папку на жестком диске или копировать на другой носитель данных.

Примечание. Чтобы снова начать работать с базой данных СкладХХХ, нужно выполнить операцию ее присоединения. Для этого нужно в контекстном меню папки Databases выбрать команду Atach Database, затем в появившемся окне нажать кнопку Append и далее указать местоположение первичного файла данных (т.е. файла данных с расширением .mdf).

17. На панели Registered Servers переместите SQL-сервер с именем ИмяКомпьютера\sqlexpress в корневую папку для серверных групп, после чего удалите созданную вами серверную группу Minsk DB - Version 2005.

18. Закройте утилиту SQL Server Management Studio.