Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД_7-15 edited by goldenlion.docx
Скачиваний:
32
Добавлен:
24.11.2018
Размер:
568.21 Кб
Скачать

Лабораторная работа № 5

ЗНАКОМСТВО С РЕДАКТОРОМ ЗАПРОСОВ (QUERY EDITOR)

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

Задачи:

  1. Ознакомиться с редактором запросов;

  2. Выполнить ряд простых запросов в Query Editor.

Query Editor

Создание объектов, работа с данными и выполнение кода реализуются или с помощью графического интерфейса и параметров, предоставляемых в Object Explorer (Обозреватель объектов), или путем написания кода с применением T‑SQL. Для написания кода необходим текстовый редактор свободного формата (free-form text editor), чтобы можно было набирать все, что необходимо. К счастью, в SSMS имеется как раз такой редактор в виде экрана с вкладками на правой стороне в представлении документа (document view). Он известен как Query Editor (Редактор запросов), и его можно вызвать с помощью щелчка по значку New Query (Создать запрос) стандартной панели инструментов или по пути File>New>Database Engine Query (Файл>Создать>Запрос к ядру СУБД | Запрос в текущем соединении).

О самом редакторе можно сказать немного, т. к. это действительно метод ввода команд и инструкций SQL Server в свободном формате для выполнения. Но в Редакторе запросов есть панель инструментов Редактор SQL, которую стоит описать в данный момент.

Первые три кнопки относятся к соединению с сервером. Первая кнопка запрашивает соединение с сервером, если в настоящее время его нет; вторая кнопка разъединяет текущее соединение; третья позволяет изменить используемое соединение.

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

Следующие кнопки относятся к выполнению кода, введенного в Редактор запросов. Красный восклицательный знак и кнопка Execute (Выполнить) выполняют код. Синяя отметка выполняет синтаксический анализ кода, но не выполняет код фактически. Синтаксический анализ кода не обнаруживает все ошибки, которые могут произойти, но гарантирует правильность синтаксиса. Последний элемент представляет собой затененную (grayed-out) кнопку, которая становится красной при выполнении кода. Нажмите эту кнопку, если необходимо отменить выполнение запроса. Отмена запроса не всегда выполняется мгновенно, это зависит от того, что выполняется, и является ли сервер локальным или удаленным. После отправки команды возникает задержка до тех пор, пока SQL Server не "приостановится" для получения команды.

Следующие две кнопки позволяют проанализировать запрос T-SQL для его оптимизации.

Вместо набора кода T-SQL вручную можно воспользоваться мастером, позволяющим создать представление путем выбора таблиц и столбцов с помощью флажков и т.п. Этот мастер, известный как View Designer (Конструктор представлений), вызывается нажатием соседней кнопки.

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

Следующий набор кнопок относится к запросу. Первые две помещают подробную информацию о том, как выполнялся код, и статистические данные о коде в выходные данные. Третья кнопка выполняет код так, как если бы он выполнялся с помощью SQLCMD — утилиты командной строки для выполнения пакетов SQL.

Первые две кнопки из тройки определяют, как будут отображаться результаты запроса — в виде текста или в виде сетки, соответственно. Третья кнопка отправляет результаты в файл.

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

Рассмотрим пример выполнения инструкции на языке T-SQL в редакторе запросов.

Задание 1.

Создадим базу данных test. Для этого в окне редактора запросов введем следующую инструкцию:

create database test

и нажмем кнопку Выполнить.

Задание 2.

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

use test

go

create table table_test (col_test char(10))

и нажмем кнопку Выполнить.

Задание 3.

Теперь заполним нашу таблицу, для этого введем в редакторе запросов следующую инструкцию:

INSERT INTO [test].[dbo].[table_test]

([col_test])

VALUES

('Строка один'),

('Строка два')

GO

и нажмем кнопку Выполнить.

Задание 4.

Теперь удостоверимся в том, что данные введены. Введем в редакторе запросов следующую инструкцию и выполним её:

SELECT [col_test]

FROM [test].[dbo].[table_test]

GO

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

Резюме.

Практически все действия в Microsoft SQL Server 2008 можно выполнить как с помощью графической оболочки (SSMS), так и с помощью инструкций T‑SQL. Да, первый способ проще, но он не всегда эффективен, поэтому в рамках данного лабораторного практикума все действия будут представлены как в графическом виде, так и в виде инструкций T‑SQL. В качестве отчета к каждой лабораторной работе необходимо будет представить полный перечень инструкций T‑SQL.

На этой лабораторной работы Вы познакомились с окном редактора запроса и выполнили ряд простых запросов.

Контрольное задание к лабораторной работе №5.

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

Вариант задания определяется последней цифрой номера студента в журнале преподавателя.

По выполнению контрольного задания подготовьте отчет, который должен содержать: файлы базы данных, сохраненные инструкции T-SQL (все задания, включая контрольные, обязательно должны быть выполнены с помощью команд T-SQL и сохранены в папке с отчетом). В названии папки с отчетом должна быть отражена Ваша фамилия и номер группы, номер варианта (например, Табаков_КТ-406_2). Место сохранения отчетов уточните у преподавателя.

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

Вариант №1.

  • Создайте базу данных pass_transport

  • создайте таблицу pass

  • заполните таблицу pass

Вариант №2.

  • Создайте базу данных remont

  • создайте таблицу master

  • заполните таблицу master

Вариант №3.

  • Создайте базу данных school

  • создайте таблицу pedcategoriya

  • заполните таблицу pedcategoriya

Вариант №4.

  • Создайте базу данных partiya

  • создайте таблицу vznos

  • заполните таблицу vznos

Вариант №5.

  • Создайте базу данных soft

  • создайте таблицу class

  • заполните таблицу class

Вариант №6.

  • Создайте базу данных cafe

  • создайте таблицу povar

  • заполните таблицу povar

Вариант №7.

  • Создайте базу данных sclad

  • создайте таблицу pogruzki

  • заполните таблицу pogruzki

Вариант №8.

  • Создайте базу данных sysadmins

  • создайте таблицу users

  • заполните таблицу users

Вариант №9.

  • Создайте базу данных business

  • создайте таблицу farm

  • заполните таблицу farm

Вариант №10.

  • Создайте базу данных raspisanie

  • создайте таблицу week

  • заполните таблицу week

Контрольные вопросы:

  1. Показать результаты создания базы данных, таблицы и ее заполнения.

  2. Укажите панель текстового редактора и редактора SQL.

  3. Как закомментировать часть текста в редакторе?

  4. Приведите список ошибок, формируемый технологией intellisense. Что дает указанная технология?

  5. Укажите назначение всех кнопок панелей редакторов запросов.

  6. Как определить название той или иной панели?

  7. Как вызвать шаблон в окно редактора?

  8. Как задать новые значения для параметров шаблона?

  9. Как заставить редактор выполнить только нужную часть кода?

  10. Как сделать так, чтобы вывести в файл и тексты запросов, и полученные результаты?

  11. Можно ли сделать так, чтобы тексты запросов были непосредственно перед выводимыми результатами (для каждого запроса)?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]