Тема 3 Особенности использования Microsoft SQL Server.

Цель: Изучить назначение SQL Server Query Analyzer и SQL Server Service Manager.

Вопросы лекции:

1.     SQL Server Query Analyzer

2.     SQL Server Service Manager

3.     Создание баз данных

4.     Создание таблицы

 

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

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

o             SQL-сервер может устанавливаться на платформах Windows NT и Windows 9.x (ввиду более высокой

надежности рекомендуется использование Windows NT);

o             QSL-сервер выполняет функции создания объектов базы данных (таблиц, индексов и т.д.),осуществляет проверку целостности базы данных и отвечает за безопасность данных в системе;

o             Доступ пользователя к данным SQL-сервера обычно осуществляется с компьютера рабочей станции. При этом создаются соответствующие приложения, которые позволяют выполнять операции над данными;

o             Для выполнения ряда задач, связанных в основном с администрированием базы данных системы  SQL-сервер, обращение к системе удобно выполнять непосредственно с самого компьютера-сервера;

o             В SQL-сервер для манипулирования данными используется язык запросов Transact-SQL, который является переработанной Microsoft версией языка SQL.

Система SQL-сервер сохраняет создаваемые объекты в соответствующих файлах на диске компьютера-сервера. При этом для таких объектов, как база данных, создаются специальные таблицы. В них хранится информация о различных элементах базы данных: индексах, таблицах, пользователях и т.д. Файлы базы данных сохраняются с расширением *.MDF, а системные файлы с расширением *.LDF.

Основные операции, связанные с управлением работой SQL-сервера, осуществляются с помощью ряда утилит, входящих в состав системы.

SQL Server Books Online - приложение, представляющее доступ к справочной информации SQL-серзера;

SQL Server Query Analyser - утилита, позволяющая выполнять команды языка запросов Transact-SQL;

ISQL - утилита, функционирующая в среде DOS аналогично SQL Server Query Analyser; SQL Server Service Manager - утилита, выполняющая работу, связанную с запуском, остановкой и временной приостановкой работы SQL-сервера;

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

Рассмотрим некоторые из утилит подробнее:

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

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

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

1.                      выбор представления результата (как текст, как GRID-таблица)

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

3.                      запуск команд на выполнение

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

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

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

7.                      разбиение окна на два: окно запроса и окно результата

8.                      выбор базы данных

 

2. Данная утилита представляет возможности запуска, остановки и временной приостановки (паузы) работы SQL-сервера. Ее запуск может осуществляться только на компьютере сервере. В диалоговом окне утилиты представлены следующие возможности управления системой:

Server - при наличии на компьютере нескольких серверов баз данных, в данном поле выбирается имя сервера, требующего запуска;

Services - в этом поле осуществляется выбор служб, с помощью которых клиенты будут иметь доступ к

базам данных SQL-сервера;

Start/Continue - запуска SQL-сервера;

Pause - временная приостановка работы SQL-сервера, причем для продолжения работы следует воспользоваться опцией Start/Continue      I

Stop - полная остановка работы SQL-сервера

Auto-start service when OS starts - выбор данной опции приведет к автоматическому запуску SQL-сервера при загрузке операционной системы. Данная утилита позволяет выполнять все основные операции администрирования SQL-сервера. С ее помощью можно осуществлять запуск всех утилит и приложений, входящих в состав SQL-сервера. Наличие утилиты на компьютере позволяет осуществлять конфигурирование и удаленных серверов, т.е. утилита может запускаться не только на самом сервере, но и на компьютере рабочей станции. Основное окно системы очень похоже на Проводник Windows. В левой части находятся основные объекты SQL-сервера. При выборе необходимого объекта, опции настройки его параметров отображаются в правой части окна утилиты. Отличительной чертой работы с утилитой является изменяющиеся панель инструментов и команды меню. Эти изменения осуществляются в зависимости от выбранного в данный момент объекта. Это в первую очередь относится к меню Action и ее графическому отображению на панели инструментов.

 

3. Процесс создания базы данных в системе SQL-сервер состоит из двух этапов: создание собственно базы данных и ее журнала транзакций. Данная информация размещается в соответствующих файлах, имеющих расширения *.mdf для базы данных, и *.ldf - для журнала транзакций. В фале базы данных записывается информация об основных ее объектах - таблицах, индексах и т.д., а в файл журнала транзакций информация о процессе работы с транзакциями (контроль целостности данных, состояние базы данных до и после выполнения транзакции).

Создание базы данных в системе SQL-сервер может осуществляться следующими способами:

·  с помощью команды CREATE DATABASES

·  с помощью утилиты SQL Server Enterprise Manager

(Для создания базы данных с помощью SQL Server Enterprise Manager на первом этапе необходимо выполнить некоторые настройки утилиты)

В группе Databases в списке следует выбрать используемый SQL-сервер. Выбор команды New Database меню Action позволяет создать новую базу данных в используемом сервере. Результатом этого действия будет отображение на экране диалогового окна ввода параметров создаваемой базы данных:

Nameимя создаваемой базы данных. При этом в списке Database files отображается имя файла, который будет создаваться для этой базы данных, путь и его исходный размер-. Если в процессе использования базы данных планируется размещение ее на нескольких дисках, то в этом случае можно создать вторичные файлы базы данных добавлением в список Database files имя нового файла. В этом случае в первичном файле (primary) файле располагается основная информация о базе данных. При нехватке свободного места для первичного файла базы данных добавляемая информация будет размещаться во вторичных файлах.

Опция Automatically grow file данного диалогового окна разрешает или запрещает автоматический рост размера базы данных. При этом приращение роста можно указать с помощью абсолютной величины в мегабайтах (in megabytes) или процентном соотношении (by percent). Если планируется запись больших объемов информации в создаваемую базу данных, то рекомендуется установить приращение роста как можно больше, т.к. в противном случае это ведет к замедлению работы SQL-сервера. Область Maximum file size определяет максимальный размер создаваемой базы данных. В этом случае выбор опции

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

После корректного создания базы данных соответствующая пиктограмма появится в группе
Databases. Созданная база данных будет иметь следующие объекты:  

Tables            - таблицы базы данных

Views              - виды, позволяющие отображать данные из таблиц

Stored Procedures  - хранимые процедуры

Extended Stored Procedures - дополнительные хранимые процедуры

Users             - пользователи, обладающие разрешением к доступу в базу данных

Roles             - роли базы данных, позволяющие объединять пользователей в группы для 

                                 осуществления  доступа к данным

Rules              - правила базы данных

Default           - стандартные установки базы данных

User Defined Data Types - определяемые пользователем типы данных

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

 

4. Создание таблиц в системе SQL-сервер можно осуществить:

·                          с помощью команды SQL CREATE TABLE, подключившись к серверу базы данных с помощью утилиты SQL Server Query Analyzer

·                           воспользовавшись приложением SQL Server Enterprise Manager (его и рассмотрим).

В списке объектов базы данных выберите объект Tables, после чего в правой части отобразится список всех имеющихся таблиц (в том числе системных). Выполните команду New Table меню Action, после чего на экране появится запрос ввода имени создаваемой таблицы. Для удобства рекомендуется использованием символов в верхнем регистре в названии таблицы, что позволит визуально отличать пользовательские таблицы от системных. После чего отобразится окно дизайнера таблиц со следующими  колонками:

Column Name   - имя поля

Datatype       - тип данного поля

Lenght  - размер поля (выставляется автоматически при выборе типа)

Precision          - десятичный размер (выставляется автоматически при выборе типа)

Scale   - точность числового типа данных (выставляется автоматически при выборе типа)

Default Value    - значение поля, устанавливаемое по умолчанию

Allows Null      - наличие флажка разрешает пустое значение в данном поле

Identity - позволяет автоматически увеличивать на указанную величину значение, вводимое 

 в поле при каждом добавлении новой записи в таблицу (для создания счетчика)

Identity Seed     - начальное значение счетчика

Identity Increment - приращение

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

Внесение информации в таблицу с помощью SQL Server Enterprise Manager необходимо выполнить

следующие действия:

·               выбрать требуемую таблицу в списке

·               выполнить команду Open Table / Return all rows меню Action

·               если в таблице находится слишком много записей, то можно ограничить выбор, воспользовавшись  командой Open Table / Return Top меню Action. В этом случае на экран будет выведено диалоговое окно, в котором необходимо будет ввести номер записи, с которой требуется осуществлять просмотр и редактирование данных

Результатом выполнения этих действий будет открытие редактора таблицы утилиты SQL Server Enterprise Manager. Перемещение по записям осуществляется курсором. Система автоматически проверяет ввод информации на соответствие типу данных. Использование встроенного редактора таблиц утилиты SQL Server Enterprise Manager отдаленно напоминает работу с другой утилитой, входящей в состав SQL-сервера - SQL Server Query Analyzer. В этом редакторе можно устанавливать параметры сортировки данных, выполнять SQL-запросы, осуществлять выборку данных по определенным критериям и т.д.

Show/Hide Diagram Pane - построение запроса с помощью диаграммы

Show/Hide Grid Pane       - диалоговый режим формирования запроса

Show/Hide SQL Pane      - окно для ввода команды SQL-запроса

Show/Hide Result Pane    - окно для отображения результата запроса

Change query type...        - выбор SQL команды для организации запроса

Run                         - выполнение запроса

Cancel Execution and Clear Results - остановка выполнения запроса и очистка окна результатов

Sort ascending         - сортировка по возрастанию (используется в режиме Diagram)

Sort descending       - сортировка по убыванию (используется в режиме Diagram)

Remove filter           - снять фильтр

Use 'Group by'        - использование опции 'Group by' в запросе

 

 

Литература:

1  Е. Мамаев  «Microsoft SQL Server 2000», БХВ-Петербург, 2004г.

 

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

1 Для чего предназначена утилита SQL Server Query Analyzer?

2 Для чего предназначена утилита SQL Server Service Manager.

3 Как создается баз данных в SQL Server?