Главная » 2014»Август»12 » Microsoft SQL Server 2012. Руководство для начинающих
02:13
Microsoft SQL Server 2012. Руководство для начинающих
Microsoft SQL Server 2012. Руководство для начинающих - Просто и доступно рассмотрены теоретические основы СУБД SQL Server 2012. Показана установка, конфигурирование и поддержка MS SQL Server 2012. Описан язык манипулирования данными Transact-SQL. Рассмотрены создание базы данных, изменение таблиц и их содержимого, запросы, индексы, представления, триггеры, хранимые процедуры и функции, определенные пользователем. Показана реализация безопасности с использованием аутентификации, шифрования и авторизации. Уделено внимание автоматизации задач администрирования СУБД. Рассмотрено создание резервных копий данных и выполнение восстановления системы. Описаны службы Microsoft Analysis Services, Microsoft Reporting Services и другие инструменты для бизнес-анализа. Рассмотрены технология работы с документами XML, управление пространственными данными, полнотекстовый поиск и многое другое. Для начинающих программистов.
Название: Microsoft SQL Server 2012. Руководство для начинающих Автор: Петкович Д. Издательство: БХВ-Петербург Год: 2013 Страниц: 816 Формат: PDF Размер: 15,9 МБ ISBN: 978-5-9775-0854-4 Качество: Отличное Язык: Русский
Содержание:
Об авторе О техническом редакторе Благодарности Введение Цели книги Новые возможности SQL Server 2012, рассматриваемые в этой книге Организация этой книги Изменения по сравнению с предыдущими изданиями Различия между синтаксисами языка SQL и Transact-SQL Работа с образцовыми базами данных Часть I. Основные понятия и установка Глава 1. Введение в системы реляционных баз данных Обзор систем баз данных Разнообразные пользовательские интерфейсы Физическая независимость данных Логическая независимость данных Оптимизация запросов Целостность данных Управление параллелизмом Резервное копирование и восстановление Безопасность баз данных Системы реляционных баз данных Работа с демонстрационной базой данных книги SQL - язык реляционной базы данных Проектирование базы данных Нормальные формы Первая нормальная форма Вторая нормальная форма Третья нормальная форма Модель «сущность - отношение» Соглашения о синтаксисе Резюме Упражнения Глава 2. Планирование установки и установка SQL Server Версии SQL Server Этап планирования Общие рекомендации Какие компоненты SQL Server следует установить? Где расположить корневой каталог? Следует ли использовать множественные экземпляры компонента Database Engine? Какой режим проверки подлинности использовать для компонента Database Engine? Планирование установки Требования к оборудованию и программному обеспечению Требования к оборудованию Требования к сети Документация по безопасности Заметки о версии в сети Электронная справка по установке Средство проверки конфигурации Установка SQL Server Резюме Глава 3. Среда управления SQL Server Management Studio Введение в среду управления SQL Server Management Studio Подключение к серверу Компонент Registered Servers Компонент Object Explorer Организация панелей среды SQL Server Management Studio и перемещение по ним Использование среды SQL Server Management Studio с компонентом Database Engine Администрирование серверов баз данных Регистрация серверов Подключение к серверу Создание новой группы серверов Управление множественными серверами Запуск и останов серверов Управление базами данных посредством обозревателя объектов Создание баз данных, не прибегая к использованию языка Transact-SQL Модифицирование баз данных, не прибегая к использованию языка Transact-SQL Управление таблицами, не прибегая к использованию языка Transact-SQL Разработка запросов, используя среду SQL Server Management Studio Редактор запросов Обозреватель решений Отладка SQL Server Резюме Упражнения Часть II. Язык Transact-SQL Глава 4. Компоненты SQL Основные объекты SQL Литералы Ограничители Комментарии Идентификаторы Зарезервированные ключевые слова Типы данных Числовые типы данных Символьные типы данных Временные типы данных Прочие типы данных Двоичные и битовые типы данных Тип данных больших объектов Тип данных UNIQUEIDENTIFIER Тип данных SQL_VARIANT Тип данных HIERARCHYID Тип данных TIMESTAMP Варианты хранения Хранение данных типа FILESTREAM Разреженные столбцы Функции языка SQL Агрегатные функции Скалярные функции Числовые функции Функции даты Строковые функции Системные функции Функции метаданных Скалярные операторы Глобальные переменные Значение NULL Резюме Упражнения Глава 5. Язык описания данных Создание объектов баз данных Создание базы данных Создание моментального снимка базы данных Присоединение и отсоединение баз данных Инструкция CREATE TABLE: базовая форма Инструкция CREATE TABLE и ограничения декларативной целостности Предложение UNIQUE Предложение PRIMARY KEY Предложение CHECK Предложение FOREIGN KEY Ссылочная целостность Возможные проблемы со ссылочной целостностью Опции ON DELETE и ON UPDATE Создание других объектов баз данных Ограничения для обеспечения целостности и домены Псевдонимы типов данных Типы данных CLR Модифицирование объектов баз данных Изменение базы данных Добавление и удаление файлов базы данных, файлов журналов и файловых групп Изменение свойств файлов и файловых групп Установка опций базы данных Хранение данных типа FILESTREAM Автономные базы данных Изменение таблиц Добавление и удаление столбцов Изменение свойств столбцов Добавление и удаления ограничений для обеспечения целостности Разрешение и запрещение ограничений Переименование таблиц и других объектов баз данных Удаление объектов баз данных Резюме Упражнения Глава 6. Запросы Инструкция SELECT. Ее предложения и функции Предложение WHERE Логические операторы Операторы IN и BETWEEN Запросы, связанные со значением NULL Оператор LIKE Предложение GROUP BY Агрегатные функции Обычные агрегатные функции Статистические агрегатные функции Агрегатные функции, определяемые пользователем Предложение HAVING Предложение ORDER BY Использование предложения ORDER BY для разбиения результатов на страницы Инструкция SELECT и свойство IDENTITY Оператор CREATE SEQUENCE Операторы работы с наборами Оператор UNION Операторы INTERSECT и EXCEPT Выражения CASE Подзапросы Подзапросы и операторы сравнения Подзапросы и оператор IN Подзапросы и операторы ANY и ALL Временные таблицы Оператор соединения JOIN Две синтаксические формы реализации соединений Естественное соединение Соединение более чем двух таблиц Декартово произведение Внешнее соединение Другие формы операций соединения Тета-соединение Самосоединение, или соединение таблицы самой с собой Полусоединение Связанные подзапросы Подзапросы и функция EXISTS Что использовать, соединения или подзапросы? Преимущества подзапросов Преимущества соединений Табличные выражения Производные таблицы Обобщенные табличные выражения ОТВ и нерекурсивные запросы ОТВ и рекурсивные запросы Резюме Упражнения Глава 7. Модифицирование содержимого таблиц Инструкция INSERT Вставка одной строки Вставка нескольких строк Конструкторы значений таблицы и инструкция INSERT Инструкция UPDATE Инструкция DELETE Другие инструкции и предложения Transact-SQL для модификации таблиц Инструкция TRUNCATE TABLE Инструкция MERGE Предложение OUTPUT Резюме Упражнения Глава 8. Хранимые процедуры и определяемые пользователем функции Процедурные расширения Блок инструкций Инструкция IF Инструкция WHILE Локальные переменные Прочие процедурные инструкции Обработка исключений с помощью инструкций TRY, CATCH и THROW Хранимые процедуры Создание и исполнение хранимых процедур Предложение WITH RESULTS SETS инструкции EXECUTE Изменение структуры хранимых процедур Хранимые процедуры и среда CLR Определяемые пользователем функции Создание и выполнение определяемых пользователем функций Вызов определяемой пользователем функции Возвращающие табличное значение функции Возвращающие табличное значение функции и инструкция APPLY Возвращающие табличное значение параметры Изменение структуры определяемых пользователями инструкций Определяемые пользователем функции и среда CLR Резюме Упражнения Глава 9. Системный каталог Введение в системный каталог Общие интерфейсы Представления каталога Запросы к представлениям каталога Динамические административные представления и функции Информационная схема Представление information_schema. tables Представление information_schema. columns Специализированные интерфейсы Системные хранимые процедуры Системные функции Функции свойств Резюме Упражнения Глава 10. Индексы Общие сведения Кластеризованные индексы Некластеризованные индексы Язык Transact-SQL и индексы Создание индексов Получение информации о фрагментации индекса Редактирование информации индекса Изменение индексов Пересоздание индекса Реорганизация страниц листьев индекса Отключение индекса Удаление и переименование индексов Рекомендации по созданию и использованию индексов Индексы и условия предложения WHERE Индексы и оператор соединения Покрывающий индекс Специальные типы индексов Виртуальные вычисляемые столбцы Постоянные вычисляемые столбцы Резюме Упражнения Глава 11. Представления Инструкции DDL и представления Создание представления Изменение и удаление представлений Редактирование информации о представлениях Инструкции DML и представления Выборка информации из представления Инструкция INSERT и представление Инструкция UPDATE и представление Инструкция DELETE и представление Индексированные представления Создание индексированного представления Модифицирование структуры индексированного представления Редактирование информации, связанной с индексированными представлениями Преимущества индексированных представлений Резюме Упражнения Глава 12. Система безопасности Database Engine Аутентификация Реализация режима аутентификации Шифрование данных Симметричные ключи Асимметричные ключи Сертификаты Редактирование пользовательских ключей Расширенное управление ключами SQL Server Способы шифрования данных Настройка безопасности компонента Database Engine Управление безопасностью с помощью среды Management Studio Управление безопасностью посредством инструкций Transact-SQL Схемы Разделение пользователей и схем Инструкции языка DDL для работы со схемами Инструкция CREATE SCHEMA Инструкция ALTER SCHEMA Инструкция DROP SCHEMA Безопасность базы данных Управление безопасностью базы данных с помощью среды Management Studio Управление безопасностью базы данных посредством инструкций языка Transact-SQL Схемы базы данных по умолчанию Роли Фиксированные серверные роли Управление фиксированными серверными ролями Регистрационное имя sa Фиксированные роли базы данных Фиксированная роль базы данных public Присвоения пользователю членства в фиксированной роли базы данных Роли приложений Управление ролями приложений посредством среды Management Studio Управление ролями приложений посредством инструкций Transact-SQL Активация ролей приложений Определяемые пользователем роли сервера Определяемые пользователем роли баз данных Управление определяемыми пользователем ролями базы данных с помощью среды Management Studio Управление определяемыми пользователем ролями базы данных с помощью инструкций Transact-SQL Авторизация Инструкция GRANT Инструкция DENY Инструкция REVOKE Управление разрешениями с помощью среды Management Studio Управление авторизацией и аутентификацией для автономных баз данных Отслеживание изменений Безопасность данных и представления Резюме Упражнения Глава 13. Управление параллельной работой Модели одновременного конкурентного доступа Транзакции Свойства транзакций Инструкции Transact-SQL и транзакции Журнал транзакций Блокировка Режимы блокировки Гранулярность блокировки Укрупнение блокировок Настройка блокировок Подсказки блокировок Параметр LOCK_TIMEOUT Отображение информации о блокировках Взаимоблокировки Уровни изоляции Проблемы одновременного конкурентного доступа Компонент Database Engine и уровни изоляции Уровень изоляции READ UNCOMMITTED Уровень изоляции READ COMMITTED Уровень изоляции REPEATABLE READ Уровень изоляции SERIALIZABLE Установка и редактирование уровня изоляции Управление версиями строк Уровень изоляции READ COMMITTED SNAPSHOT Уровень изоляции SNAPSHOT Разница между уровнями изоляции READ COMMITTED SNAPSHOT и SNAPSHOT Резюме Упражнения Глава 14. Триггеры Введение Создание триггера DML Изменение структуры триггера Использование виртуальных таблиц deleted и inserted Области применения DML-триггеров Триггеры AFTER Создание журнала аудита Реализация бизнес-правил Принудительное обеспечение ограничений целостности Триггеры INSTEAD OF Триггеры first и last Триггеры DDL и области их применения Триггеры DDL уровня базы данных Триггеры DDL уровня сервера Триггеры и среда CLR Резюме Упражнения Часть III. SQL Server: системное администрирование Глава 15. Системная среда компонента Database Engine Системные базы данных База данных master База данных model База данных tempdb База данных msdb Хранение данных на диске Свойства страниц данных Заголовок страницы Пространство для данных Таблица смещения строк Типы страниц данных Страницы данных последовательных строк Страницы данных переполнения строк Параллельное выполнение задач Утилиты и команда DBCC Утилита bcp Утилита sqlcmd Утилита sqlservr Команды DBCC Команды проверки Управление на основе политик Ключевые термины и концепты управления на основе политик Применение управления на основе политик Резюме Упражнения Глава 16. Резервное копирование, восстановление и доступность системы Причины потери данных Введение в методы резервного копирования Полное резервное копирование базы данных Разностное резервное копирование Резервное копирование журнала транзакций Резервное копирование файлов или файловых групп Выполнение резервного копирования базы данных Резервное копирование с помощью инструкций Transact-SQL Типы устройств резервного копирования Инструкция BACKUP DATABASE Инструкция BACKUP LOG Резервное копирование с помощью интегрированной среды Management Studio Создание графика резервного копирования в среде SQL Server Management Studio Для каких баз данных создавать резервную копию? Резервное копирование базы данных master Резервное копирование производственных баз данных Восстановление базы данных Автоматическое восстановление Ручное восстановление Проверка резервного набора на пригодность для восстановления Восстановления баз данных и журналов транзакций с помощью инструкций Transact-SQL Восстановление баз данных и журналов транзакций с помощью среды Management Studio Восстановление до метки Восстановление базы данных master Восстановление других системных баз данных Модели восстановления Модель полного восстановления Модель восстановления с неполным протоколированием Простая модель восстановления Изменение и редактирование модели восстановления Доступность системы Использование резервного сервера Использование технологии RAID Расслоение дисков. RAID 0 Зеркалирование. RAID 1 Контроль по четности. RAID 5 Зеркальное отображение базы данных Отказоустойчивая кластеризация Доставка журналов транзакций Высокий уровень доступности и восстановления в аварийных ситуациях (HARD) Группы, реплики и режимы обеспечения доступности Конфигурация технологии HADR Мастер плана обслуживания Резюме Упражнения Глава 17. Система автоматизации задач администрирования Запуск службы SQL Server Agent Создание заданий и операторов Создание задания и его шагов Создание расписания задания Операторы извещения о состоянии задания Просмотр журнала истории задания Предупреждающие сообщения Сообщения об ошибках Журнал ошибок службы SQL Server Agent Журнал событий приложений Windows Определение предупреждающих сообщений для обработки ошибок Создание предупреждающих сообщений для системных ошибок Создание предупреждающих сообщений для ошибок определенного уровня Создание предупреждающих сообщений для определяемых пользователем ошибок Резюме Упражнения Глава 18. Репликация данных Распределенные данные и методы распределения Общие сведения о репликации в SQL Server Издатели, распространители и подписчики Публикации и статьи База данных distribution Агенты Агент Snapshot Agent Агент Log Reader Агент Distribution Agent Агент Merge Agent Типы репликации Репликации транзакций Одноранговая репликация транзакций Репликация моментальных снимков Репликация слиянием Модели репликации Центральный издатель с распространителем Центральный издатель с удаленным распространителем Центральный подписчик с множественными издателями Множественные издатели с множественными подписчиками Управление репликацией Настройка серверов распространения и публикации Настройка публикаций Настройка серверов подписки Резюме Упражнения Глава 19. Оптимизатор запросов Этапы обработки запроса Как работает оптимизация запроса Анализ запроса Выбор индексов Селективность выражения с индексированным столбцом Статистические данные индекса Статистические данные столбца Выбор порядка соединения Выбор метода выполнения соединения Вложенный цикл Соединение слиянием Соединение хешированием Кэширование планов Редактирование планов выполнения Отображение информации о кэше планов Инструменты для редактирования стратегии оптимизатора Инструкция SET Текстовый план выполнения План выполнения XML Другие опции инструкции SET Среда Management Studio и графические планы выполнения Пример планов выполнения Динамические административные представления и оптимизатор запросов Представление sys. dm_exec_query_optimizer_info Представление sys. dm_exec_query_plan Представление sys. dm_exec_query_stats Представления sys. dm_exec_sql_text и sys. dm_exec_text_query_plan Представление sys. dm_exec_procedure_stats Представление sys. dm_exec_cached_plans Подсказки оптимизации Зачем надо использовать подсказки оптимизации Типы подсказок оптимизации Табличные подсказки Подсказки соединения Подсказки запросов Структуры планов Резюме Глава 20. Настройка производительности Факторы, влияющие на производительность Приложения базы данных и производительность Эффективность кода приложения Проектирование на физическом уровне Компонент Database Engine и производительность Оптимизатор запросов Блокировки Системные ресурсы и производительность Дисковые операции ввода/вывода Операции с памятью Мониторинг производительности Обзор монитора Performance Monitor Мониторинг центрального процессора Мониторинг центрального процессора посредством счетчиков Мониторинг центрального процессора посредством представлений Мониторинг памяти Мониторинг памяти посредством счетчиков Мониторинг памяти с использованием динамических административных представлений Мониторинг памяти с использованием команды DBCC MEMORYSTATUS Мониторинг дисковой системы Мониторинг дисковой системы с использованием счетчиков Мониторинг дисковой системы с использованием динамических административных представлений Мониторинг сетевого интерфейса Мониторинг сетевого интерфейса с помощью счетчиков Мониторинг сетевого интерфейса с помощью динамического административного представления Мониторинг сетевого интерфейса с помощью системной процедуры sp_monitoring Выбор подходящего инструмента для мониторинга Приложение SQL Server Profiler Помощник Database Engine Tuning Advisor Предоставление информации помощнику Database Engine Tuning Advisor Работа с помощником Database Engine Tuning Advisor Другие средства SQL Server для настройки производительности Сборщик Performance Data Collector Создание хранилища MDW Организация сбора данных Просмотр отчетов Регулятор ресурсов Resource Governor Создание групп нагрузок и пулов ресурсов Мониторинг конфигурации регулятора Resource Governor Резюме Упражнения Часть IV. SQL Server и бизнес-аналитика Глава 21. Введение в бизнес-аналитику Оперативная обработка транзакций в сравнении с бизнес-аналитикой Оперативная обработка транзакций Системы бизнес-аналитики Хранилища данных и киоски данных Проектирование хранилищ данных Кубы и их архитектура Агрегирование Уровень агрегирования Физическое хранение куба Доступ к данным Резюме Упражнения Глава 22. Службы SQL Server Analysis Services Терминология служб SSAS Разработка многомерного куба, используя средство BIDS Создание проекта бизнес-аналитики Определение источников данных Создание представлений источников данных Создание куба Проектирование агрегирования для хранилища Обработка куба Просмотр куба Извлечение и доставка данных Обращение к данным посредством PowerPivot for Excel Работа с PowerPivot for Excel Обращение к данным посредством многомерных выражений Безопасность служб Analysis Services SQL Server Резюме Упражнения Глава 23. Бизнес-аналитика и Transact-SQL Конструкция окна Секционирование Упорядочение и кадрирование Расширения предложения GROUP BY Оператор CUBE Оператор ROLLUP Функции группирования Функция GROUPING Функция GROUPING_ID Наборы группирования Функции запросов OLAP Ранжирующие функции Статистические агрегатные функции Стандартные и нестандартные аналитические функции Предложение TOP Комбинация предложений OFFSET и FETCH Функция NTILE Сведение данных Оператор PIVOT Оператор UNPIVOT Резюме Упражнения Глава 24. Службы отчетности SQL Server Reporting Services Введение в информационные отчеты Архитектура служб отчетности SQL Server Reporting Services Служба Windows Reporting Services Каталог отчетов Диспетчер отчетов Report Manager Настройка служб отчетности SQL Server Reporting Services Создание отчетов Создание отчетов с помощью мастера Report Server Project Wizard Организация источников данных и наборов данных Выбор источника данных Проектирование запроса Выбор типа отчета Создание таблицы Выбор макета отчета Выбор формата отчета Выбор места развертывания и завершение работы мастера Просмотр результирующего набора Развертывание отчета Создание параметризованных отчетов Управление отчетами Отчеты по требованию Отчеты по подписке Стандартные подписки Подписки, управляемые данными Параметры доставки отчетов Кэширование отчетов Выполнение моментальных снимков Резюме Упражнения Глава 25. Методы оптимизации для реляционной оперативной аналитической обработки Секционирование данных Как компонент Database Engine секционирует данные Шаги для создания секционированных таблиц Установление целей секционирования Определение ключа секционирования и количества секций Создание файловой группы для каждой секции Создание функции секционирования и схемы секционирования Создание секционированных индексов Методы секционирования для повышения производительности системы Совместное размещение таблиц Использование операций поиска, поддерживающих секционирование Параллельное выполнение запросов Руководство по секционированию таблиц и индексов Оптимизация запроса схемы типа «звезда» Колончатые индексы Работа с колоночными индексами Создание колоночных индексов посредством Transact-SQL Создание колоночных индексов посредством среды SQL Server Management Studio Преимущества и недостатки колоночных индексов Достоинства колоночных индексов Недостатки колоночных индексов Резюме Часть V. За пределами реляционных данных Глава 26. SQL Server и XML Основные концепции XML Требования к правильно сформированному документу XML Элементы языка XML Атрибуты XML Пространства имен XML XML и всемирная паутина Родственные XML языки Языки схем Язык DTD Язык XML Schema Хранение XML-документов в SQL Server Хранение XML-документов, используя тип данных XML Хранение XML-документов с использованием декомпозиции Представление данных Представление XML-документов в качестве реляционных данных Представление реляционных данных в качестве XML-документов Режим RAW Режим AUTO Режим EXPLICIT Режим PATH Директивы Запрашивание данных из XML-документов Резюме Глава 27. Пространственные данные Введение Модели для представления пространственных данных Тип данных GEOMETRY Тип данных GEOGRAPHY Различия между типами данных GEOMETRY и GEOGRAPHY Внешние форматы данных Работа с данными пространственного типа Работа с типом данных GEOMETRY Работа с типом данных GEOGRAPHY Работа с пространственными индексами Отображение информации о пространственных данных Новые возможности SQL Server 2012 для работы с пространственными данными Новые подтипы дуг окружностей Тип CircularString Тип CompoundCurve Тип CurvePolygon Новые пространственные индексы Индекс auto_grid_index для типа данных GEOMETRY Новые системные хранимые процедуры, касающиеся пространственных данных Резюме Глава 28. Полнотекстовый поиск в SQL Server Введение Лексемы, делители текста на слова и списки стоп-слов Делители текста на слова и фильтры IFilter Списки стоп-слов Операции с лексемами Расширенные операции над словами Операции задания параметров соответствия Операции определения близости Коэффициент релевантности Как работает компонент FTS сервера SQL Server Индексирование полнотекстовых данных Полнотекстовое индексирование посредством Transact-SQL Создание однозначного индекса Разрешение полнотекстового индексирования для базы данных Создание полнотекстового каталога Создание полнотекстового индекса Полнотекстовое индексирование с помощью среды SQL Server Management Studio Полнотекстовые запросы Предикат FREETEXT Предикат CONTAINS Функция FREETEXTTABLE Функция CONTAINSTABLE Поиск и устранение проблем с полнотекстовыми данными Новые возможности SQL Server 2012 по полнотекстовому поиску Настройка поиска с учетом близости Свойства расширенного поиска Резюме Предметный указатель