Помощь в написании студенческих работ
Антистрессовый сервис

Лабораторная работа № 12. Работа с файлами базы данных и индексами

РефератПомощь в написанииУзнать стоимостьмоей работы

Объясните, с чем связана ошибка при выполнении этой команды? С помощью команды ALTER VIEW измените представление так, чтобы индекс можно было создать, и создайте индекс. Снова выполните запрос. Вспомните, что такое «индексированное представление» и чем оно отличается от обычного. Попробуйте для представления dbo. vBooks создать уникальный кластерный индекс, используя поле LibID: Опишите, как… Читать ещё >

Лабораторная работа № 12. Работа с файлами базы данных и индексами (реферат, курсовая, диплом, контрольная)

В этой лабораторной работе будут рассмотрены вопросы, связанные с физическим размещением БД на дисках, а также с созданием и использованием индексов. В работе будет использоваться «библиотечная» база MyLib, созданная в процессе выполнения лабораторной работы № 9.

Получение информации о файлах и файловых группах. Запустите Management Studio и выполните подключение к экземпляру SQL Server. По документации SQL Server ознакомьтесь со столбцами системных представлений sys. database_files и sys.filegroups. Создайте новый запрос (кнопка панели инструментов «Создать запрос») и выполните приведенный ниже код (предполагается, что созданная ранее база называется MyLib):

use [MyLib];

до.

select * from sys. database_files;

select * from sys. filegroups;

go.

Опишите, как организовано хранение созданной вами БД. Найдите аналогичную информацию, используя графический интерфейс SQL Server Management Studio (в свойствах БД — разделы Files и FileGroups).

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

Выберите данные из представлений sys. database_files и sys. filegroups и проанализируйте результат.

Работа с индексами. Используя системные представления sys. schemas, sys. tables, sys. indexes, получите сведения о схемах, таблицах и индексах, определенных в вашей БД. Проанализируйте полученную информацию. Как называются индексы, поддерживающие ограничения первичного ключа и уникальности, заданные при создании таблиц?

На панели инструментов включите отображение плана выполнения запроса (рис. П. 12.1). Выполните запрос.

SELECT Title FROM Book;

Какой индекс задействуется при выполнении этого запроса и почему?

Отображение плана выполнения.

Рис. П. 12.1. Отображение плана выполнения.

С помощью оператора Create Index создайте для таблицы Book некластерный неуникальный индекс для столбца Title. Индекс должен упорядочиваться по возрастанию значений столбца. С помощью представления sys. indexes убедитесь, что индекс появился. Ознакомьтесь со свойствами созданного индекса, прокомментируйте основные из них. Снова выполните предыдущий запрос и сравните планы выполнения. В чем разница?

Будет ли созданный вами индекс использоваться при выполнении приведенного ниже запроса? Обоснуйте свое предположение и проверьте его:

SELECT Title, Author.

FROM Book.

WHERE Title LIKE 'Введение %'.

and Author LIKE 'Д%';

Создайте новый индекс на поле Title, где поле Author будет выступать в качестве добавленного (указывается в секции INCLUDE). Снова выполните предыдущий запрос. Изменилось ли что-нибудь в плане выполнения запроса? Почему?

Выполните приведенный ниже запрос и проанализируйте его план выполнения:

SELECT LibID, Author, Title, Publisher.

FROM dbo. Book INNER JOIN dbo. BooklnLib ON.

dbo. Book. BookID=dbo.BooklnLib.BookID;

На основе предыдущего запроса создайте представление.

CREATE VIEW dbo. vBooks AS.

SELECT LibID, Author, Title, Publisher.

FROM dbo. Book INNER JOIN dbo. BooklnLib ON.

dbo. Book. BookID=dbo.BooklnLib.BookID;

Выполните запрос (отличается ли его план выполнения от плана, полученного ранее?):

SELECT * FROM dbo. vBooks;

Вспомните, что такое «индексированное представление» и чем оно отличается от обычного. Попробуйте для представления dbo. vBooks создать уникальный кластерный индекс, используя поле LibID:

CREATE UNIQUE CLUSTERED INDEX ix_VBOOks on.

dbo.vBooks (LibID);

Объясните, с чем связана ошибка при выполнении этой команды? С помощью команды ALTER VIEW измените представление так, чтобы индекс можно было создать, и создайте индекс. Снова выполните запрос.

SELECT * FROM dbo. vBooks;

В чем различие в планах выполнения, если сравнивать с планом, полученным ранее?

Показать весь текст
Заполнить форму текущей работой