Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Метод указания AIS

.pdf
Скачиваний:
8
Добавлен:
18.02.2016
Размер:
9.86 Mб
Скачать

 

Оглавление

 

Предисловие

2

Введение

3

1

Окружение SQL Server 2000

4

2

Копирование и перемещение данных

15

3

Администрирование SQL Server

25

4

Безопасность в SQL Server 2000

32

5

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

43

6

Создание индексов

52

7

Отношения

56

8

Создание диаграмм баз данных

59

9

Создание объектов таблиц

64

10 Извлечение строк

69

КАТУ ИМ.С.СЕЙФУЛЛИНА

11

Оператор SELECT

73

12

Сортировка и выборка строк

79

13

Связывание таблиц

83

14

Избирательная выборка данных

92

К16.Т.Н. ОМАРБЕКОВА А.С.

15

Работа с данными

100

 

Анализатор запросов Query Analyzer

110

17

Язык определения данных

116

18

Использование Object Browser для определения данных

122

19

Программные объекты

127

20

Управление ходом выполнения

138

21

Хранимые процедуры СУБД

148

22

Курсоры в Transact-SQL

163

23

Триггеры

174

1

Предисловие

Учебное пособие «Администрирование баз данных» познакомит Вас с Microsoft SQL Server 2000 - одним из перспективных инструментов для создания и управления реляционными базами данных.

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

Возможно, Вы только начинаете работать с базами данных, возможно, Вы давно работате с Microsoft Access, Oracle, другими реляционными базами данных - данное практическое руководство окажется незаменимым при освоении версий SQL Server 2000 Personal, Standard или Enterprise. Учебное пособие снабжено многочисленными примерами и упражнениями, которые помогут Вам быстро освоиться с интерактивными инструментами для создания баз данных и управления ими и с программированием на языке Transact+SQL.

Вы научитесь пользоваться средством Enterprise Manager SQL Server 2000 для создания и администрирования баз данных и объектов баз данных. Освоите работу с анализатором запросов Query Analyzer, познакомитесь с возможностями автоматизации за счет использования сценариев, триггеров, функций и хранимых процедур.

КАТУ ИМ.С.СЕЙФУЛЛИНА

К.Т.Н. ОМАРБЕКОВА А.С.

СУБД

2

Введение

Microsoft SQL Server 2000 – это реляционная система управления базой данных (СУБД). В реляционных базах данных данные хранятся в таблицах. Взаимосвязанные данные могут группироваться в таблицы, кроме того, могут быть установлены также и взаимоотношения между таблицами. Отсюда и произошло название реляционные – от английского слова relational (родственный, связанный отношениями, взаимозависимый). Пользователи получают доступ к данным на сервере через приложения, а администраторы, выполняя задачи конфигурирования, администрирования и поддержки базы данных, производят непосредственный доступ к серверу.

СУБД SQL Server появилась в 1989 году и с тех пор значительно изменилась. Огромные изменения претерпели масштабируемость продукта, его целостность, удобство администрирования, производительность и функциональные возможности. Система SQL Server может быть реализована либо как клиент-серверная система, либо как автономная "настольная" система. Тип проектируемой вами системы зависит от количества пользователей, которые должны одновременно осуществлять доступ к базе данных, и от характера работ, которые должны выполняться.

Microsoft SQL Server 2000 является сложным программным инструментом для обслуживания реляционных баз данных. Чтобы курс имел разумный объем, были приняты некоторые допущения и ограничения. Так, предполагается наличие у читателя некоторых представлений о реляционных базах данных и о том, как их создавать. В то же время, вам не обязательно обладать каким-либо опытом в применении баз данных, чтобы выполнять упражнения из этого курса. Microsoft SQL Server 2000 – это

КАТУсистема управленияИМреляционными.базамиС.данныхСЕЙФУЛЛИНА(RDBMS) в топологии клиент/сервер, разработанная для обработки высокопроизводительных сетевых транзакций (OLTP), хранения данных и

использования в приложениях электронной коммерции. Учебное пособие "Администрирование баз данных" поможет вам быстро освоить принципы создания и манипулирования базами данных с использованием интерактивных средств, входящих в состав SQL Server 2000.

Рассматривается весь состав программных средств, лежащих в основе этой СУБД и показано, как Кработают.Т.иНвзаимодействуют. ОМАРБЕКОВАее многочисленные компоненты. В учебном пособии принят комплексныйА.С.

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

3

1 Окружение SQL Server 2000

Microsoft SQL Server 2000 был разработан для поддержки крупных баз данных в различных областях, в том числе связанных с онлайновой обработкой трансакций, хранением данных и электронной коммерцией. Для поддержки этих функций SQL Server предоставляет набор инструментальных средств, включающих утилиты командной строки – например bcp.exe, которая копирует данные между SQL Server файлами операционной системы, и Enterprise Manager, достаточно сложное графическое средство для администрирования множества баз данных и самого SQL Server.

Знакомство с Enterprise Manager

Утилита SQL Server Enterprise Manager является основным инструментом для администрирования SQL Server 2000. Используя графический интерфейс Enterprise Manager, вы можете:

1)задавать группы экземпляра SQL Server и регистрировать отдельные серверы в пределах группы;

2)конфигурировать все опции SQL Server для каждого зарегистрированного сервера;

3)создавать и администрировать все базы данных SQL Server, объекты, учетные записи, пользователей и разрешения для каждого зарегистрированного сервера;

4)определять и выполнять все административные задачи SQL Server для каждого зарегистрированного сервера;

5)просматривать содержимое таблиц и представлять их с помощью конструктора Query Designer;

6)интерактивно разрабатывать и тестировать SQL операторы, пакеты и сценарии с помощью

КАТУсредства SQL ServerИМQuery Analyzer;.С.СЕЙФУЛЛИНА

7) использовать различные мастера SQL Server.

Microsoft Management Console

Microsoft Windows включает в себя утилиту Microsoft Management Console (MMC), которая предоставляет стандартную оболочку для управления приложениями сервера. Набор инструментов

MMC, используемых для управления определенным сервером, носит название "консоль" (console). КЧащевсегоконсоли.серверовОМАРБЕКОВАпредставляют собой присоединяемые модули (snap-in), иАSQL .ServerС. Enterprise Manager, который вы используете для администрирования SQL Server 2000, не является

исключением. За дополнительной информацией по MMC вы можете обратиться к справочной системе Windows Help, для этого нажмите кнопку Start (Пуск), выберите Help (Справка) и затем во вкладке

Search (Поиск) наберите "MicrosoftСУБДManagement Console".

Запуск Enterprise Manager

Перед тем, как вы начнете выполнять задачи администрирования, вы должны запустить SQL Server Enterprise Manager. Управление Enterprise Manager будет осуществляться так же, как в любых других программах под Windows.

Запустите Enterprise Manager.

Нажмите кнопку Start (Пуск) в панели задач Microsoft Windows.

Выберите Programs (Программы) и затем папку Microsoft SQL Server. В открывшейся папке Microsoft SQL Server появится список значков.

Нажмите на значке программы Enterprise Manager. Появится окно Enterprise Manager представленное на рисунке 1.

4

КАТУ ИМ СЕЙФУЛЛИНА

Рисунок 1

Enterprise Manager предоставляет инструменты, которые необходимы для администрирования SQL

КServerи.дляНсоздания. иОМАРБЕКОВАсопровождения баз данных. Окно Enterprise Manager разделено наАдве панели: . Console Tree (Дерево консоли) слева и Details Panel (Панель деталей) справа. Элементы в панели

Console Tree расположены иерархически, как список папок в Microsoft Windows Explorer. Вы можете развернуть подчиненные элементы в иерархическом порядке, щелкнув мышью на значке развертывания

или убрать их, нажав на значке свертывания .

Регистрация сервера

СУБД

 

При первом запуске Enterprise Manager он будет автоматически регистрировать все экземпляры SQL Server, выполняющиеся локально. Если же вы устанавливаете новый экземпляр SQL Server или соединяетесь с экземпляром SQL Server через локальную сеть, вы должны зарегистрировать его.

Запуск и остановка сервера

Перед тем, как вы сможете соединиться с экземпляром SQL Server, должна быть запущена служба. Вы сможете узнать запущена служба или нет, взглянув на значок сервера в дереве консоли в Enterprise Manager. Каждый из значков его смысл приведены в таблице 1.

Таблица 1 - Вид значка экземпляра SQL Server

Значок

Значение

 

Сервер запущен

 

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

 

Сервер остановлен

Дерево консоли Console Tree в Enterprise Manager

Дерево консоли Console Tree в Enterprise Manager показывает список всех объектов SQL Server,

известных Enterprise Manager.

Примечание. Объекты, отображаемые в дереве консоли в Enterprise Manager вашей системы, могут не соответствовать объектам в примерах из этого курса. Не беспокойтесь насчет этого, это просто означает, что ваш системный администратор сконфигурировал SQL Server как-то иначе.

5

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

Таблица 2 - Основные объекты в дереве консоли Enterprise Manager

 

Значок

Папка

Описание

 

 

Server Group

Для удобства администрирования один или более серверов

 

 

 

 

 

сгруппированы вместе.

 

 

Server

 

Экземпляр SQL Server зарегистрированный в Enterprise Manager.

 

 

 

Database

 

Коллекция таблиц и других элементов, которые хранят определенный

 

 

 

 

 

набор структурированных данных.

 

 

Data

 

Набор графических инструментов и программных объектов,

 

 

 

Transformatio

позволяющих извлекать, изменять и объединять данные.

 

 

n Services

 

 

 

 

 

Management

Набор графических инструментов и программных объектов для

 

 

 

 

 

управления SQL Server.

 

 

Replication

Набор графических инструментов и программных объектов,

 

 

 

 

 

позволяющих копировать данные и объекты базы данных и передавать их

 

 

 

 

из одной базы данных в другую.

 

 

Security

 

Набор графических инструментов и программируемых объектов для

 

КАТУ ИМ.С.СЕЙФУЛЛИНА

 

 

 

 

управления доступом в SQL Server.

 

 

Support

 

Разнообразные утилиты для управления SQL Server.

 

 

 

Services

 

 

 

 

 

Meta

Data

Утилиты для сопровождения метаданных (данных о данных) для баз

 

 

 

Services

 

данных.

К.ТСистемныебазы.данныхОМАРБЕКОВА А.С.

Дерево консоли Console Tree в Enterprise Manager всегда содержит четыре базы данных, которые использует собственно SQL Server. Эти базы данных называются системными базами данных. Их роли в SQL Server описаны в таблице 3.

Таблица 3 - Системные базы данных SQL Server

Системная

 

база

Назначение

данных

 

Master

База данных master записывает всю информацию, необходимую для управления

 

пользователя. База данных определена

 

системы SQLСУБДServer, включая учетную запись

 

в пределах процессов системы и сервера. Таблицы, хранящиеся в базе данных master,

 

называются системным каталогом.

Model

База данных model используется как шаблон при создании пользователем новой базы

 

данных. По умолчанию, база данных model содержит таблицы, составляющие

 

каталог базы данных, таблицы которые используются SQL Server для определения

 

других объектов в пределах базы данных пользователя.

Msdb

База данных msdb используется SQL Server Agent для составления расписания

 

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

 

Оповещения являются определяемыми пользователем событиями SQL Server.

 

Задания являются рядом действий, выполняемых SQL Server Agent.

Tempdb

Tempdb используется для временного сохранения данных. Ее содержимое

 

автоматически очищается при выключении SQL Server. В действительности, все

 

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

 

пользователя из системы.

 

6

Внимание! Поскольку целостность системы базы данных имеет важное значение для успешной работы SQL Server, вы должны всегда использовать инструменты администрирования, предоставляемые Enterprise Manager или программным интерфейсом (SQL-DMO) для изменения содержимого баз данных master или msdb.

Руководствуйтесь принципом: смотрите, но не трогайте!

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

Помните, однако, что любые объекты, добавленные вами в базу данных model, будут автоматически добавляться только в новые базы данных, но не в уже существующие.

Соединение с базой данных и выход из нее

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

Объекты базы данных

Базы данных SQL Server существуют как часть дерева консоли Console Tree в SQL Server. Эти базы данных содержат различные объекты, определяющие данные, которые хранятся в базе данных, и маршруты для доступа к этим данным.

В дальнейшем мы подробно рассмотрим большинство из этих объектов, а пока они будут кратко

КАТУописаны в таблице 4ИМ. .С.СЕЙФУЛЛИНА

Таблица 4 - Объекты, содержащиеся в базах данных SQL Server

Значок

Объект

Описание

 

Diagram

Графическое представление таблиц в базе данных.

К.Т.Н. ОМАРБЕКОВА А.С.

 

Table

 

Информация, сгруппированная в строки и столбцы.

 

View

 

Виртуальная таблица, предоставляющая альтернативный метод просмотра

 

 

 

 

информации в базе данных.

 

Stored

 

Набор команд Transact SQL, выполняющихся в пакетном режиме.

 

 

Procedure

 

 

 

User

 

ЗначениеСУБД,

 

 

 

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

 

 

 

безопасности.

 

Role

 

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

 

 

Rule

 

Объект базы данных, связанный со столбцом, или пользовательский тип

 

 

 

 

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

 

Default

автоматически присваемое самой системой, если пользователь

 

 

 

 

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

 

User

Defined

Тип данных, определенный пользователем для хранения данных

 

 

Data Type

специального типа.

 

User

defined

Набор команд Transact SQL, принимающих параметры и возвращающих

 

 

Function

результат.

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

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

Для каждой логической базы данных SQL Server создает два физических файла: один для объектов, а другой для журнала транзакций (операций).

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

7

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

Создание новой базы данных

Хотя можно создать новую базу данных с помощью команды New Database (Новая база данных) из контекстного меню папки Databases (Базы данных), проще это сделать, воспользовавшись мастером создания базы данных Create Database Wizard.

Установка свойств базы данных

Когда вы создаете базу данных с помощью мастера Create Database Wizard, вы указываете определенные характеристики, или свойства, базы данных, такие как имя базы данных и место размещения. После создания базы данных вы можете поменять эти свойства, изменив соответствующие параметры в диалоговом окне Properties (Свойства).

Например, увеличение размера физического файла – это довольно серьезная операция, выполнение которой может привести к увеличению времени отклика сервера. Если вы обнаружите, что SQL Server приходится слишком часто увеличивать размер файла. Вам следует учитывать возможность изменения процента увеличения размера файла в диалоговом окне Properties (Свойства), чтобы сервер смог увеличивать размер файла более, чем на 10% (установка по умолчанию).

Управление базами данных

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

переименование базы данных. Эта задача не может быть выполнена с помощью Enterprise Manager. Как

КАТУэто сделать, вы узнаетеИМпозже. .С.СЕЙФУЛЛИНА

Удаление базы данных

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

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

К.ТЗадания: . ОМАРБЕКОВА А.С.

1)запустите Enterprise Manager;

2)зарегистрируйте сервер;

3)запустите сервер; СУБД

4)приостановите сервер;

5)остановите сервер;

6)создайте новую базу данных;

7)измените процент увеличения размера файла;

8)удалите базу данных.

Методические указания

1)Запустите Enterprise Manager.

Нажмите кнопку Start (Пуск) в панели задач Microsoft Windows.

Выберите Programs (Программы) и затем папку Microsoft SQL Server. В открывшейся папке Microsoft SQL Server появится список значков.

Нажмите на значке программы Enterprise Manager. Появится окно Enterprise Manager представленное на рисунке 1.

2)Зарегистрируйте сервер.

Щелкните правой кнопкой мыши на группе сервера в дереве консоли Console Tree. Появится контекстное меню, представленное на рисунке 2.

8

Рисунок 2 КАТУВ контекстномИМменю нажмитена New.SQLСЕЙФУЛЛИНАServer Registration (Новая регистрация SQL Server).

Нажмите Next (Далее). Появиться первая страница мастера регистрации Register SQL Server Wizard со списком имен серверов, известных системе (рисунок 3).

К.Т.Н. А.С.

Рисунок 3

Если сервер, который вы хотите зарегистрировать, присутствует в списке, то выберите его в поле списка имен и нажмите Add (Добавить). Если имя сервера там отсутствует, то введите его имя в текстовом поле, а затем нажмите на кнопке Add (Добавить). Мастер отобразит сервер в поле Added Servers (Добавленные серверы) (рисунок 4).

9

Рисунок 4

Нажмите Next (Далее). Мастер отобразит окно, запрашивающее, какой метод идентификации вы выбираете.

Если ваш системный администратор сказал вам использовать аутентификацию SQL Server Authentication, щелкните на кнопке выбора The SQL Server Login Information That Was Assigned To Me By The System Administrator (SQL Server Authentication). При этом для входа будет использоваться

информация, назначенная вам системным администратором.

КАТУНажмите NextИМ(Далее). .С.СЕЙФУЛЛИНА

Если вы выбрали аутентификацию SQL Server Authentication, то вам нужно будет ввести ваш идентификатор учетной записи и пароль. Введите эту информацию и нажмите Next (Далее). Мастер отобразит экран, спрашивающий вас о том, какую вы выберите группу, в которую новый сервер должен

быть добавлен.

К.ТНажмитеNext.(ДалееОМАРБЕКОВА) для добавления сервера в группу по умолчанию. Мастер отобразитА.окноС, . сообщающее о том, что сервер добавлен.

Нажмите Finish (Готово). Мастер завершит задачи, необходимые для регистрации сервера, и отобразит окно подтверждения.

Нажмите Close (ЗакрытьСУБД).

Мастер Register SQL Server Wizard будет закрыт, а в дереве консоли Console Tree появиться новый сервер.

Совет. Вам нужно зарегистрировать экземпляр SQL Server только один раз. Enterprise Manager запоминает зарегистрированные серверы при следующем запуске программы.

3)Запустите сервер

Щелкните правой кнопкой мыши на сервере. Нажмите Start (Запуск) в появившемся контекстном

меню.

4)Приостановите сервер

Щелкните правой кнопкой мыши на сервере. Нажмите Pause (Приостановить) в появившемся контекстном меню.

5)Остановите сервер

Щелкните правой кнопкой мыши на сервере. Нажмите Stop (Остановить) в появившемся контекстном меню.

Внимание! Перед тем, как продолжить работу над уроком, убедитесь, что используемый вами сервер запущен.

6)Создайте новую базу данных

Найдите папку Databases на сервере, который вы используете для выполнения упражнений и уроков из этого курса. SQL server отобразит список баз данных в рабочей панели Details Pane.

Щелкните на кнопке Wizard (Мастер) в панели инструментов Enterprise Manager. SQL server отобразит диалоговое окно Select Wizard (Выбор мастера) (рисунок 5).

10