Благодарности
Огромную благодарность хочется выразить Рику (Rick) за его вклад в написание книги. Отдельно хочу поблагодарить Джофа (Geoff), Сюзану (Susan) и Шерон (Sheron). Спасибо всем за поддержку и понимание. Книга создавалась по бета-версии программы, которая изменялась по ходу написания книги. Поэтому трудностей и проблем хватило на всех.
Особую благодарность хотелось бы выразить сотрудникам Microsost, занимавшимся разработкой SQL Server, — они с радостью отвечали на мои занудные вопросы и выполняли просьбы.
Написание книги, как любой экстраординарный проект, тяжелее всего было перенести моей семье. Жена Трейси (Tracy) и две дочери окружали меня душевной теплотой и заботой. Без их понимания и доброты мне вряд ли удалось бы создать такую сложную книгу. Благодаря моим дочерям Кэтрин (Kathryn) и Элизабет (Elizabeth) я смог выполнить эту нелегкую задачу. Спасибо за понимание и терпение, проявленное вами. Дело сделано. Теперь я полностью в вашем распоряжении.
Дорогая мама! Спасибо за все. Ты знаешь,
без тебя я бы не смог написать эту книгу.
— Ричард
Хотелось бы поблагодарить Ричарда за неимоверное старание и трудолюбие, проявленные при написании книги. Отдельная благодарность всем сотрудникам Sams Publishing за то, что книга, составлявшаяся из 25 отдельных документов и сотен копий экрана, стала единым целым. Джоф, Сюзан и, конечно, Шерон проделали великолепную работу по верстке книги.
Спасибо моим маме и папе за их любовь
и поддержку на протяжении многих лет.
Их помощь я ощущаю постоянно.
— Рик
Об авторах
Ричард Веймаер (Richard Waymire) является менеджером проекта по разработке SQL Server в Microsoft. Он является сертифицированным преподавателем Microsoft, разработчиком проектов, администратором баз данных (MCDBA), системным инженером и инженером Internet-систем. Кроме того, он занимает должность президента Тихоокеанской северо-западной группы пользователей SQL Server. До поступления на работу в Microsoft Ричард обучал пользователей методам работы в SQL Server. Ричард также долгое время практиковал как учитель и консультант по средам Windows NT и технологиям BackOffice, в глубине души он остается администратором баз данных. Пообщаться с Ричардом можно по электронной почте: [email protected]
Рик Сотел (Rick Sawtell) — сертифицированный преподаватель Microsoft и разработчик проектов. Он является владельцем частной консалтинговой фирмы на Гавайах. Он консультирует, обучает и пишет книги по программным продуктам Microsoft. На ниве программирования и консультирования Рик работает уже 14 лет, что позволило ему в совершенстве овладеть как внешним интерфейсом базы данных, так и внутренней (серверной) ее структурой. Пишите ему по адресу: [email protected].
Введение
Итак, вы намерены самостоятельно освоить Microsoft SQL Server 2000 за 21 день. Надеемся, эта книга не только поможет вам изучить SQL Server, но и станет настольным руководством к действиям. Мы будем очень рады, если знания, почерпнутые из этой книги, вскоре претворятся в реальные решения и проекты.
Для корректной установки, администрирования, устранения неполадок и настройки SQL Server вам понадобятся недюжинные знания. Их можно условно разделить на две категории:
- программирование в SQL Server;
- администрирование SQL Server.
В небольшой компании роль программиста, системного администратора и администратора базы данных выполняет один человек. В больших компаниях эти должности разделены; их занимают отдельные сотрудники.
Разработчик баз данных SQL Server отвечает за разработку, программирование и распространение базы данных. Книгу, которую вы держите в руках, можно считать основой для обучения методам программирования в SQL. После программирования базы данных ответственность за ее работоспособность полностью ложатся на администратора. Все работы по ее поддержке и обслуживанию выполняет исключительно он.
Администратор SQL Server обычно ответственен за каждодневное функционирование базы данных. Эта книга предназначена скорее администраторам баз данных, однако некоторые уроки будут интересны программистам. Хотя администраторы SQL Server практически никогда не занимаются программированием, по мере освоения этой книги вы приобретете навыки программирования и наверняка заинтересуетесь тем, как с нуля программируются такие объемные структуры. Все методы программирования, описанные в книге, не выходят за рамки уровня знаний обычного администратора. Вы научитесь программно создавать таблицы, сложные запросы и индексы.
О книге
Задача этой книги — сделать вас хорошим администратором базы данных SQL Server. Книга разделена на 21 урок, каждый из которых вы будете изучать, предположительно, за один день. Хотя некоторые уроки намного больше других, на ознакомление с любым уроком у вас не должно уходить больше четырех часов. В среднем один урок изучается за несколько часов.
В начале книги мы рассмотрим основные методы работы в SQL Server; по мере изучения нового материала вы будете знакомиться со все боле сложными задачами администрирования баз данных. В основном эта книга рассчитана на начинающих пользователей SQL Server. Мы пытались объяснить не только, как выполнять задачи, но и почему их необходимо выполнять.
Изучив 21 урок этой книги, вы станете искусным в обращении с SQL Server. В каждом уроке вы найдете для себя что-то новое и стоящее изучения. Поскольку каждый последующий урок строится на основе предыдущих, то очень важно, чтобы вы изучали книгу последовательно. В противном случае иногда вам будет трудно понять, о чем идет речь.
Уроки первой недели
В уроках первой недели описываются методы создания баз данных SQL Server и управления ими. Вы познакомитесь с основами работы в SQL Server и будете готовы к восприятию более сложного материала, описанного в последующих занятиях.
В течение первой недели вы изучите следующее.
- День 1-й. "Введение в реляционные базы данных и Microsoft SQL Server 2000". Вы познакомитесь с SQL Server и понятием реляционной базы данных, историей создания и развития SQL Server.
- День 2-й. "Установка SQL Server 2000". Здесь вы познакомитесь с требованиями, которые необходимо соблюсти перед установкой SQL Server, а также некоторыми настройками, позволяющими корректно запускать SQL Server в Windows 9x и Windows NT/2000.
- День 3-й. "Инструменты управления и утилиты SQL Server 2000". Этот урок содержит описание инструментов и вспомогательных программ, интегрированных в SQL Server.
- День 4-й. "Создание и администрирование баз данных и файлов данных". Вы узнаете, как сохраняются данные в SQL Server и научитесь создавать, редактировать и удалять базы данных и файлы данных.
- День 5-й. "Регистрация пользователей и защита данных". Управление учетными записями пользователей, создание новых пользователей и ролей для каждой базы данных — вот о чем рассказано в этом уроке.
- День 6-й. "Доступ к ресурсам базы данных". В процессе изучения этого урока вы научитесь определять права для пользователей и ролей в SQL Server. Вы познакомитесь с правами по умолчанию, определяемыми ролями и пользователями базы данных.
- День 7-й. "Резервное копирование баз данных". В этом уроке описывается выполнение одной из самых важных задач в SQL Server — создание резервной копии базы данных и журналов транзакций.
Уроки второй недели
Следующие семь уроков закрепят ваши знания, полученные в предыдущих занятиях. Вторая неделя занятий посвящена получению и обработке данных в SQL Server.
- День 8-й. "Восстановление баз данных". Восстановление баз данных в SQL Server — сложная задача, которая требует взвешенного подхода и четко выработанной стратегии действий. Вы также узнаете о дополнительных методах предотвращения потери данных.
- День 9-й. "Типы данных и создание таблиц". Вы познакомитесь с различными типами данных, которые вводятся в столбцы таблиц базы данных, а также узнаете, как из столбцов, содержащих разные типы данных, составляются новые таблицы.
- День 10-й. "Получение данных и оператор SELECT". Операторы SELECT используются для получения данных и управления ими в базе данных. Здесь также описаны дополнительные запросы, в которых применяется агрегирование данных, а также задействуются коррелируемые подзапросы.
- День 11-й. "Изменение данных". В этом уроке вы найдете все о редактировании данных с помощью операторов INSERT, UPDATE и DELETE.
- День 12-й. "Использование расширений Transact-SQL". Здесь вы познакомитесь с методами программирования в SQL Server, а также узнаете о транзакциях и блокировках.
- День 13-й. "Индексирование и повышение производительности". Изучив этот урок, вы научитесь правильно планировать и проводить индексирование данных, позволяющее повысить производительность выполнения запросов. Вы познакомитесь с индексированными представлениями — самым чудесным средством в SQL Server 2000.
- День 14-й. "Интегрированная целостность данных". В уроке отображены инструкции по правильному содержанию данных. Описанные в уроке принципы соответствуют концепциям DRI (Declarative Referential Integrity — декларированной ссылочной целостности).
Уроки третьей недели
В течение третьей недели вы познакомитесь с дополнительными средствами SQL Server.
- День 15-й. "Создание представлений, триггеров, хранимых процедур и функций". Название урока говорит само за себя. В нем описаны методы создания представлений, триггеров, внутренних процедур и функций, задаваемых пользователями. Это, пожалуй, самый длинный урок в книге.
- День 16-й. "Методика репликации". В этом уроке вы познакомитесь с концепцией репликации данных, терминологией этого процесса и методами настройки реплик.
- День 17-й. "Проведение репликации". Распределение опубликованных данных между подписчиками — вот главная тема урока.
- День 18-й. "Планирование задач с помощью агента SQL Server". В этом уроке описано, как с помощью агента SQL Server автоматизируются часто выполняемые задачи.
- День 19-й. "Обмен данными между SQL-серверами". Перемещение данных между серверами — одна из важнейших операций, не рассмотреть которую нельзя. В уроке описано, как данные отправляются с SQL-сервера и принимаются им. Вы также познакомитесь с дополнительными источниками данных OLE для баз данных.
- День 20-й. "Основы и инструменты мониторинга производительности". Хотя SQL Server — самообслуживаемая структура, всегда не лишне знать, как она настраивается. Вы также узнаете, как проводится мониторинг производительности баз данных и приложений SQL Server.
- День 21-й. "Использование XML в SQL Server 2000". Интегрирование среды XML в SQL Server приводит к изумительным результатам. Вы научитесь управлять SQL Server с помощью XML и отправлять данные в формате XML из SQL-сервера.
Дополнительные уроки
После изучения трехнедельного курса можно приступить к освоению дополнительных уроков.
- День 22-й. "Обзор служб анализа данных". В этом уроке мы вкратце остановимся на службах анализа данных: SQL Server 2000 Analysis Services и Microsoft Meta Data Services. Эти программы включены в состав SQL Server, но распространяются также в виде отдельных программных решений.
- День 23-й. "Обзор English Query". Средство English Query дает пользователям возможность вводить целые предложения на английском языке, которые автоматически переводятся в формат запросов SQL.
Кому предназначена эта книга
Книга написана для тех, кто уже хотя бы немного знаком с SQL Server. Чем больше вы знаете, тем легче вам будет учиться.
Углубленное знание Windows NT и Windows 2000 необязательно, хотя и желательно, поскольку при работе в SQL Server многие вспомогательные средства используют ресурсы Windows NT/2000.