![](/user_photo/_userpic.png)
- •Лабораторный практикум
- •«Администрирование и разработка серверных баз данных»
- •«Прикладная информатика в экономике» введение
- •1. Лабораторная работа по теме «Планирование установки sql Server»
- •Установка экземпляра sql Server по умолчанию
- •Проверка инсталляции
- •Запуск службы sql Server с помощью программы sql Server Service Manager (диспетчера служб sql Server).
- •Поключение к sql Server и выполнение запроса для проверки установленных баз данных
- •Построение запроса с помощью конструктора
- •2. Лабораторная работа по теме «Управление файлами базы данных»
- •1. Использование мастера для создания базы данных
- •2.Создание базы данных в Enterprise Manager
- •3. Создание базы данных SampleDbTsql с помощью команд Transact-sql в Query Analyzer
- •4. Изменение базы данных
- •5. Просмотр информации и изменение параметров баз данных Просмотр информации о базах данных в Query Analyzer
- •Изменение свойств базы данных в Enterprise Manager
- •Просмотр опций базы данных и их изменение с помощью языка Transact-sql
- •4. Лабораторная работа по теме «обеспечение безопасности в sql server»
- •1. Управление доступом к серверу
- •1.1.Проверка способа аутентификации
- •1.2.Создание пользователей и групп пользователей в Windows
- •Результаты выполнения задания
- •2. Управление разрешениями.
- •2.1.Создание ролей базы данных
- •2.2.Назначение разрешений на операторы
- •2.3.Назначение разрешений объектам
- •Результаты выполнения задания
- •3.Управление безопасностью на уровне приложений
- •3.1.Создание роли приложения
- •3.2.Назначение разрешений при помощи представлений и хранимых процедур
- •3.3.Проверка разрешений на представление и хранимые процедуры
- •5. Лабораторная работа по теме «Резервное копирование баз данных»
- •1.Создание устройств резервного копирования с помощью sql Server Enterprise Manager
- •2. Создание устройств резервного копирования с помощью команд языка Transact-sql
- •3.Резервное копирование баз данных
- •3.1.Резевное копирование с помощью Enterprise Manager
- •3.2. Добавление резервных копий в один и тот же файл с помощью языка Transact-sql
- •3.3. Просмотр содержания устройства резервного копирования
- •3.4. Перезапись существующего файла резервных копий с помощью языка Transact-sql
- •3.5. Резервное копирование одной базы данных в несколько файлов резервных копий
- •3.5. Резервное копирование базы данных с созданием временного устройства резервного копирования
- •4. Резервное копирование журнала транзакций
- •4.1. Резервное копирование журнала транзакций с помощью Enterprise Manager
- •4.2. Резервное копирование журнала транзакций в Query Analyzer
- •5.Создание дифференциальной резервной копии
- •Создание резервной копии базы данных nwcopy
- •Моделирование случайного изменения данных
- •Восстановление базы данных из полной резервной копии
- •Проверка восстановления базы данных
- •Моделирование изменений в базе данных и сбор сведений о них
- •Выполнение полного резервного копирования базы данных nwcopy
- •Изменение базы данных nwcopy и создание резервной копии журнала транзакций
- •Изменение базы данных и создание дифференциальной резервной копии
- •Изменение базы данных nwcopy и создание еще одной резервной копии журнала транзакций
- •Моделирование повреждения базы данных
- •Восстановление полной резервной копии базы данных, дифференциальной копии и копии журнала транзакций Проверка имеющихся резервных копий
- •Просмотр выбранной стратегии восстановления
- •Вопрос 1: Вы согласны с этим планом восстановления?
- •Вопрос 2: Почему не выбрана первая резервная копия журнала транзакций?
- •Восстановление полной и дифференциальной резервных копий
- •Проверка содержимого базы данных
- •Восстановление журнала транзакций из резервной копии
- •Просмотр содержимого базы данных
- •7. Лабораторная работа по теме «Мониторинг производительности сервера»
- •1. Использование программы Windows System Monitor
- •Проведите имитацию деятельности сервера
- •Отслеживание использования памяти и процессора.
- •Использование утилиты sql Profiler
- •Конфигурирование утилиты sql Profiler для обнаружения попыток несанкционированного подсоединения к серверу
- •Конфигурирование трассировки для регистрации долго выполняющихся запросов
- •Просмотр информации о блокировках
- •Удержание блокировки на сервере
- •Обнаружение блокирование блокировок
- •8. Лабораторная работа «Автоматизация административных задач» Цели:
- •Создание операторов
- •2. Создание задания с помощью мастера
- •3. Создание многошагового задания
- •Откройте программу Event Viewer (Просмотр событий) и просмотрите, как в нем отобразилась неудачная попытка выполнить задание. Отразите это в отчете.
- •4.Создание оповещений
- •4.1. Создание оповещения с помощью мастера Create Alert Wizard
- •4.2. Создание оповещения на основе пользовательского сообщения об ошибке
- •4.4.Создание оповещений об изменении рабочего режима
- •Тестирование оповещения о заполнении журнала транзакций
- •9. Лабораторная работа по теме «Обмен данными»
- •Импорт данных из запроса
- •2. Изменение пакета dts с помощью программы dts Designer
- •Перенос объектов sql Server в новую базу данных Импортирование объектов из одной базы данных в другую
- •Экспорт файлов в текстовый файл
- •Проверьте, что для пакета создано расписание
- •Импорт данных с помощью задания массовой вставки Bulk Insert
- •Перенос данных из таблицы Excel в таблицу базы данных Pubs
- •10. Лабораторная работа по теме «Репликация»
- •Регистрация второго сервера
- •Настройка репликации транзакций
- •Создание публикации (на сервере издателе и дистрибьюторе)
- •Создание подписки (на сервере-подписчике)
- •3. Создание публикации слиянием
- •Создайте публикацию для репликации слиянием на издателе
- •Просмотрите хронологию работы агента Snapshot
- •Создание подписки по запросу и разрешение конфликтов Создание Pull подписки
- •Обновление исходной таблицы на издателе
- •Одновременное обновление на издателе и подписчике
- •6. Проверка индексных структур
- •7. Проверка полезности индексов
- •8. Просмотр статистики индексов и оценка индексной селективности
- •12. Лабораторная работа по теме «Программирование»
- •Исправление ошибок в готовом скрипте
- •2.Создание циклических программ
- •3.Использование конструкции case
- •4.Использование динамически конструирования программ
- •6. Создать таблицу в базе данных Pubs со следующими полями: fio студента, oc1, oc2, oc3, означающие оценки за экзамены. Внести в нее 3-4 записи.
- •7. Преобразовать ранее созданную функцию, добавив в нее необходимые параметры.
- •9. Создайте программу для исправления номера телефона автора с определенным идентификационным номером (Pubs..Authors)
- •13. Лабораторная работа по теме «Триггеры»
- •1. Создание триггера на вставку новой записи
- •Тестирование созданного триггера
- •2. Создание триггера на обновление для обновления содержимого колонки
- •3. Создание триггера, который поддерживает сложные бизнес-правила
- •Управление безопасностью sql Server
- •Фиксированные серверные роли sql Server
- •Фиксированные роли базы данных
- •Блокировки в sql Server
- •Обмен данными
- •Список источников данных
- •Задачи dts Designer
12. Лабораторная работа по теме «Программирование»
Исправление ошибок в готовом скрипте
Откройте в Query Analyzer скрипт, расположенный по адресу:
C:\Moc\2073A\Labfiles\L02\Sample_Script.sql.
Просмотрите его и выполните. Просмотрите перечень ошибок. Обратите внимание, что сообщается номер строки (Line ….), в которой находится ошибка.
Основные намеки: в программе не проставлены символы комментариев и отсутствуют команды (GO), разделяющие программу на пакеты.
Запустите программу, сохраните ее на своем диске, сделайте распечатку для отчета.
2.Создание циклических программ
Создайте программу для вычисления суммы четных и нечетных чисел по отдельности для чисел натурального ряда, начиная от 1 до 20. Результаты выводить на каждом шаге цикла в следующем виде:
Нечетное |
Сумма нечетных |
Четное |
Сумма четных |
1 |
1 |
2 |
2 |
Нечетное |
Сумма нечетных |
Четное |
Сумма четных |
3 |
4 |
4 |
6 |
… |
… |
… |
… |
Текст программы и результаты привести в отчете.
3.Использование конструкции case
Разработайте скрипт для проверки наличия контрактов с авторами (таблица Authors базы данных Pubs) и выдайте сообщения в соответствии со следующим алгоритом:
Если поле contract=0 и поле state =’CA’, то текст сообщения должен быть ‘надо заключить!’,
Если поле contract=0 и поле state =’TN’, то текст сообщения – ‘тоже хороший человек, надо подумать’,
Если поле contract=1, то сообщить ‘ему и так хорошо’, во всех остальных случаях записать ‘пусть потерпит!!’.
Вывести в запросе поля au_lname, au_fname, state, contract, 'Наличие контракта'=.
Текст программы и результаты привести в отчете.
4.Использование динамически конструирования программ
Написать программу для открытия любой базы данных и выполнения запроса из любой ее таблицы. Используйте для проверки таблицы Orders, Products базы данных Northwind и таблицу Authors из базы данных Pubs.
Текст программы и результаты привести в отчете.
5. Разработать функцию для начисления стипендии в зависимости от среднего балла по следующему алгоритму:
если средний балл <3.5, то стипендия не начисляется, если средний балл>=3.5, но меньше 4.5, то стипендия должна быть 300 р, иначе 400.
Проверить результаты, задав соответствующие значения параметров. Текст функции и результаты привести в отчете.
6. Создать таблицу в базе данных Pubs со следующими полями: fio студента, oc1, oc2, oc3, означающие оценки за экзамены. Внести в нее 3-4 записи.
7. Преобразовать ранее созданную функцию, добавив в нее необходимые параметры.
Используйте новый вариант функции в запросе, выводя в нем следующие поля: FIO, OC1, OC2, OC3, средний балл, значение стипендии.
8. Создать функцию, которая должна выбирать в таблицу фамилию, разряд сотрудника, должность из соответствующих таблиц базы данных kadry с разрядом, большим или равным заданного параметром функции @r. По умолчанию сделать этот параметр равным числу 13. Организовать проверку на правильность ввода данного параметра, (разряд должен быть в пределах от 1 до 18), выдать сообщение об ошибке. Можно для этого использовать поле fio. Таблицу объявить параметром функции. Организовать вызов функции т.о., чтобы проверить правильность ее работы при всех вариантах вводимого параметра.
9. Создайте программу для исправления номера телефона автора с определенным идентификационным номером (Pubs..Authors)
Создайте новую пользовательскую ошибку со следующим текстом сообщения «Введен неправильный идентификационный код пользователя» с уровнем серьезности 16 (контекстное меню на имени сервера/Все задачи/Manage SQL Server Messages).
Задайте в программе два параметра: ID автора (@au_id) и номер телефона (@phone). По умолчанию дайте им значения NULL.
Предусмотрите в программе проверку ввода значений параметров, выдайте сообщение, если они отсутствует.
Если параметр @au_id введен, проверьте, существует ли такой идентификационный номер в таблице авторов. Если нет автора с введенным @au_id, возбудите созданную ранее ошибку. Если введенный параметр соответствует определенному автору, замените номер его телефона на введенный и выдайте об этом сообщение.
10. Создайте скрипт для объявления, открытия и вывода данных из курсора, который должен выбрать поля CustomerID, ContactName, City из таблицы Northwinds..Customers из записей, в которых поле City=London.
11. Создайте хранимую процедуру с параметром @city и выходным параметром в виде курсора, аналогичном созданному в примере 10.
Напишите процедуру обработки данного курсора и сохраните ее в виде отдельного скрипта. В этой процедуре подсчитайте количество проживающих в заданном городе и выведите результат под выводом данных из курсора в виде «Число проживающих в городе London= …».