32
Разработка баз данных Microsoft SQL Server 2005 – новые возможности 1 ©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев Методическое пособие по курсу «Разработка баз данных Microsoft SQL Server 2005 - новые возможности» Данный курс рассчитан на 16 академических часов. Microsoft SQL Server 2005 является логическим продолжением Microsoft .SQL Server 2000. Большое количество усовершенствований в SQL Server 2005 значительно облегчает комплексное обслуживание предприятия. В данном курсе рассмотрены основные улучшения, которые, по мнению автора, наиболее полезны. Программа данного курса основана на программах двух курсов: Microsoft SQL Server 2005. Обновление навыков для работы со службами отчетов Microsoft SQL Server 2005. Программирование Все примеры, кроме примера 13, в пособии подписанные как примеры, являются рабочими. Их можно копировать, вставлять в SQL Server Management Studio и запускать. Все они реализованы на основе стандартной БД AdventureWorks, поставляемой с дистрибутивом Microsoft SQL Server 2005. Сразу после примеров на рисунках изображены результаты запросов. Результаты, которые получите Вы, выполнив данные запросы, могут немного отличаться от приведенных в пособии. Это связано с тем, что у автора БД AdventureWorks отличается от эталонной в виду проведенных ранее опытов. К тому же Ваша БД AdventureWorks также может отличаться от эталонной. В данном пособии рассматриваются: Основы Microsoft SQL Server 2005 Усовершенствования языка Transact SQL Работа с XML Работа c службой SQL Server Reporting Services Каждый раздел заканчивается кратким описанием практической работы.

Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

  • Upload
    others

  • View
    14

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 1

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Методическое пособие по курсу «Разработка баз данных Microsoft SQL Server 2005 -

новые возможности» Данный курс рассчитан на 16 академических часов. Microsoft SQL Server 2005 является логическим продолжением Microsoft .SQL Server 2000. Большое количество усовершенствований в SQL Server 2005 значительно облегчает комплексное обслуживание предприятия. В данном курсе рассмотрены основные улучшения, которые, по мнению автора, наиболее полезны. Программа данного курса основана на программах двух курсов:

• Microsoft SQL Server 2005. Обновление навыков для работы со службами отчетов

• Microsoft SQL Server 2005. Программирование Все примеры, кроме примера 13, в пособии подписанные как примеры, являются рабочими. Их можно копировать, вставлять в SQL Server Management Studio и запускать. Все они реализованы на основе стандартной БД AdventureWorks, поставляемой с дистрибутивом Microsoft SQL Server 2005. Сразу после примеров на рисунках изображены результаты запросов. Результаты, которые получите Вы, выполнив данные запросы, могут немного отличаться от приведенных в пособии. Это связано с тем, что у автора БД AdventureWorks отличается от эталонной в виду проведенных ранее опытов. К тому же Ваша БД AdventureWorks также может отличаться от эталонной.

В данном пособии рассматриваются: • Основы Microsoft SQL Server 2005 • Усовершенствования языка Transact SQL • Работа с XML • Работа c службой SQL Server Reporting Services

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

Page 2: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 2

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Содержание Содержание ............................................................................................2 Работа с SQL Server 2005 ......................................................................4 Компоненты и инструментальные средства Microsoft SQL Server 2005 ....... 4 Компоненты SQL Server 2005 ..............................................................................................4 Новые инструменты для администраторов БД ...............................................................4 Новые инструменты для разработчиков БД .....................................................................5

Средства разработки SQL Server 2005............................................................... 5 Новые возможности для разработки в SQL Server 2005..................................................5 Выполнение запросов.............................................................................................................6 Работа с Object Explorer ......................................................................................................6

Безопасность SQL Server 2005 ........................................................................... 7 Архитектура безопасности SQL Server 2005 ....................................................................7 Управление безопасностью с использованием схем ..........................................................8

Практическая работа: знакомство с SQL Server 2005 .................................. 8 Усовершенствования языка программирования Transact-SQL .........9 Усовершенствования Data Definition Language................................................ 9 Новые и усовершенствованные типы данных....................................................................9 Разбиение таблиц на разделы (партиципирование) ..........................................................9

Усовершенствования Data Manipulation Language......................................... 10 Ключевое слово OUTPUT ....................................................................................................10 Общие табличные выражения (Common Table Expressions) ..........................................10 Создание рекурсивных выражений Common Table Expressions ......................................11 Операторы PIVOT и UNPIVOT..........................................................................................12 Оператор APPLY .................................................................................................................12 Функции упорядочивания (ranking) ....................................................................................13

Обработка структурированных исключений (structured exception).............. 14 Практическая работа: Программирование на языке Transact-SQL........... 16

Использование XML в SQL Server 2005 ............................................16 Усовершенствованные возможности SQL Server 2005 для работы с XML 16 Конструкция FOR XML и ее использование......................................................................16 Новые возможности и применение функции OPENXML ................................................17

Тип данных xml.................................................................................................. 18 Хранение XML-данных в базе данных ................................................................................18 Работа с нетипизированными XML-данными (untyped XML) ........................................18 Управление схемами XML ...................................................................................................19 Работа с типизованными XML-данными (typed XML)....................................................19

XQuery................................................................................................................. 20 Работа с выражениями XQuery ........................................................................................20 Выборка XML-данных с использованием методов обработки xml-типов данных.......20 Изменение XML-данных с использованием метода modify .............................................21

Практическая работа: работа с XML............................................................ 22

Page 3: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 3

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Создание отчетов в Reporting Services ...............................................22 Обзор Reporting Services ................................................................................... 22 Служба Reporting Services................................................................................. 22 Средства проектирования отчетов ................................................................... 22

Report Designer.....................................................................................................................22 Report Builder .......................................................................................................................22

Создание простого отчета ................................................................................. 23 Проектирование отчета....................................................................................................23 Дополнительные возможности .........................................................................................24

Публикация отчетов ............................................................................26 Развертывание отчета ........................................................................................ 26 Просмотр отчета ................................................................................................ 27 Экспорт отчетов ................................................................................................. 28

Подписка на отчеты .............................................................................28

Модификация источника данных ......................................................................................28 Создание подписки ..............................................................................................................29

Практическая работа: развертывание отчета и подписка .......................... 31 Рекомендации по курсу .......................................................................32 Разбивка тем по часам ...........................................................................................................32 Рекомендации по лабораторным работам ..........................................................................32 Рекомендации по использованию электронных источников...............................................32

Page 4: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 4

Работа с SQL Server 2005

Компоненты и инструментальные средства Microsoft SQL Server 2005

Компоненты SQL Server 2005

SQL Server 2005

Relational Database Engine

.NET CLR

Analysis Services

Native HTTP Support

Service Broker Replication

Reporting Services Full-Text Search

Notification Services SQL Server

Integration Services

Relational Database Engine – это ядро SQL Server, использующее .NET. Analysis Services – службы для анализа данных, поддерживают OLAP. SQL Server Integration Services (SSIS) – средства для создания решений импорта и экспорта данных и выполнения трансформирования данных при передаче. Notifiations Services – службы оповещения.

Reporting Services – службы для создания и публикации отчетов. Service Broker – механизм, основанный на очереди, для связывания различных

служб приложений. Native HTTP Support – встроенная поддержка HTTP. Позволяет отвечать на

запросы HTTP без IIS. SQL Server Agent – автоматизирует обслуживание БД и управляет задачами,

событиями и оповещениями. Replication – ряд средств для копирования и распространения данных и объектов

БД из одной БД в другую и синхронизации между БД для поддержания соответствия. Full-Text Search – средство эффективного поиска в БД.

Новые инструменты для администраторов БД Основными новшествами для администраторов является центральное средство администрирования и новая архитектура безопасности. Новое средство администрирования, SQL Server Management Studio, позволяет управлять серверами БД, Analysis Services и серверами Reporting Services.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 5: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 5

Новые инструменты для разработчиков БД SQL Server 2005 предоставляет 4 средства для разработки:

• SQL Server Management Studio; • Business Intelligence Development Studio; • sqlcmd; • Дизайнеры Visual Studio. SQL Server Management Studio в разработке может использоваться для графического создания БД или для создания, выполнения и сохранения скриптов.

Business Intelligence Development Studio используется для создания решений Analysis Services. Sqlcmd – новая утилита командной строки для замены isql и osql, предоставляет дополнительную функциональность. SQL Server 2005 расширяет среду Visual Studio для облегчения конструирования отчетов.

Средства разработки SQL Server 2005

Новые возможности для разработки в SQL Server 2005 Для разработчиков БД расширен Transact SQL, встроена поддержка XML, появились службы обмена сообщениями, оповещений и отчетов, встроена поддержка HTTP, проведена интеграция с Common Language Runtime (CLR), созданы так называемые объекты управления SQL (SQL Management Objects – SMO), имеется возможность обработки структурированных исключений. В Transact SQL введены новые типы данных, структурированная обработка исключений, общие табличные выражения и функции ранжирования.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 6: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 6

Можно использовать тип данных xml для хранения в БД данных в формате XML и обработки этих данных как XML (X-Query). CLR интегрирована в ядро SQL Server, что позволяет создавать хранимые процедуры, функции, триггеры и типы данных, написанные на языках .NET. Объекты SMO предоставляют управляемый программный интерфейс для написания скриптов административных задач. Это позволяет разработчикам создавать административные решения, используя основанные на COM и .NET языки программирования.

Выполнение запросов Выполнение запросов осуществляется в SQL Server Management Studio. Для создания вкладки запроса нажмите на кнопку <New Query>.

Если в окне Object Explorer выбран сервер БД, то запрос будет автоматически подключен к этому серверу. В противном случае будет выдан запрос о подключении к серверу БД.

Запуск на выполнение запроса осуществляется по нажатии клавиши <F5>.

Работа с Object Explorer Работа с Object Explorer аналогична работе в Enterprise Manager в SQL Server 2000. Для добавления сервера в окно необходимо нажать на кнопку <Connect>. После этого надо выбрать тип сервера, к которому надо подключиться. Object Explorer позволяет работать не только с серверами SQL Server 2005, но и с более старыми версиями.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 7: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 7

Безопасность SQL Server 2005 Безопасность в SQL Server 2005 сильно изменена по сравнению с безопасностью SQL Server 2000. Главными изменениями являются новая иерархическая организация объектов безопасности, политики безопасности паролей и разделение пользователей и схем. Понятие «схема» широко известно администраторам и разработчикам БД Oracle. Определение схем в SQL Server 2005 дано ниже.

Архитектура безопасности SQL Server 2005

Основные принципы безопасности остались теми же. Имеются пользователи, принципалы (principals), защищаемые объекты (securables) и разрешения или полномочия (permissions), описывающие права принципалов на проведение тех или иных действий над защищаемыми объектами. Безопасность реализована на трех уровнях: операционной системы Windows, SQL Server и базы данных (database). Разделение принципалов и защищаемых объектов по трем уровням безопасности показано на рисунке. Разрешения (GRANT, REVOKE, DENY) и основные действия над объектами также показаны на рисунке. Схемы (schemas)– это пространства имен для объектов БД, хранилища объектов, которые сами являются объектом БД. В SQL Server 2000 пользователи и схемы были, по сути, одним и тем же. Если какой-то пользователь создавал свою таблицу, то обратиться к ней другой пользователь мог с указанием имени пользователя и через точку имени таблицы (ait.tmpStipView). В SQL Server 2005 эти два понятия разделены. Теперь перед именем таблицы указывается имя схемы, в которую данная таблица входит. При этом имя владельца схемы может не совпадать с именем самого пользователя. Каждому пользователю ставится в соответствие одна схема по умолчанию. При обращении к таблице, если явно не указана схема, принимается схема по умолчанию. Если схема по умолчанию не указана, то подразумевается схема dbo.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 8: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 8

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Управление безопасностью с использованием схем Управление схемами осуществляется при помощи трех операторов: CREATE SCHEMA <выражение имени схемы> [<элемент схемы>[,…n]] ALTER SCHEMA <имя схемы> TRANSFER <имя объекта> DROP SCHEMA <имя схемы> для создания, модифицирования и удаления схемы соответственно. В качестве <выражения имени схемы> может быть просто имя схемы, выражение <имя схемы> AUTHORIZATION <имя владельца схемы>, выражение AUTHORIZATION <имя владельца схемы>. В качестве <элемента схемы> можно указать операторы CREATE TABLE, CREATE VIEW или GRANT. В операторе ALTER SCHEMA под <именем объекта> указывается объект, который помещается в схему. -- Создаем логин на сервере CREATE LOGIN Paul WITH PASSWORD='P@ssw0rd' USE AdventureWorks -- Создаем пользователя в БД CREATE USER Paul FOR LOGIN Paul GO -- Создаем схему CREATE SCHEMA mySchema AUTHORIZATION Paul CREATE TABLE PersonData (recID int, name nvarchar(60)) Пример 1. Создание схемы с указанием владельца и таблицей Для владельца схемы созданная схема не является схемой по умолчанию. У пользователя может быть несколько схем. Указать схему по умолчанию для пользователя мы можем в операторах CREATE USER и ALTER USER. ALTER USER Paul WITH DEFAULT_SCHEMA=mySchema Пример 2. Задание схемы по умолчанию существующему пользователю Схемы являются такими же объектами БД, как и таблицы, поэтому, к ним также применяются разрешения. DENY SELECT ON SCHEMA::mySchema TO public Пример 3. Запрещаем SELECT в схеме mySchema роли public.

Практическая работа: знакомство с SQL Server 2005 Цель работы: освоение SQL Server Management Studio, получение навыков работы со схемами.

1. Освоение SQL Server Management Studio: • запуск SQL Server Management Studio; • подключение к серверу; • создание тестовой БД; • создание таблицы; • внесение записей в таблицу через запрос; • удаление БД.

2. Получение навыков работы со схемами: • подключение к БД AdventureWorks; • создание логина Paul и соответствующего пользователя в AdventureWorks; • создание схемы в БД, таблицы в схеме (см. Пример 1) и разрешений на

SELECT, INSERT к таблице; • подключение к серверу под созданным логином;

Page 9: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 9

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

• попытка внести в таблицу данные (без указания имени схемы). Результатом будет ошибка, т.к. без явного указания схемы перед именем таблицы будет подразумеваться схема dbo, в которой данной таблицы нет;

• указание созданной схемы в качестве схемы по умолчанию для пользователя Paul;

• повторная попытка внести в таблицу данные. Результат будет положительным, т.к. вместо dbo будет подразумеваться необходимая схема.

Результат работы: обучающиеся усваивают навыки использования SQL Server Management Studio; выполнение 2-го пункта работы показывает облегчение разделения прав доступа за счет использования схем и вызывает привыкание указывать схему при обращении к таблицам.

Усовершенствования языка программирования Transact-SQL

Усовершенствования Data Definition Language

Новые и усовершенствованные типы данных Расширены типы данных varchar, nvarchar, nvarbinary. Если раньше их размер составлял не более 8000 байт, то, используя ключевое слово max (varchar(max), nvarchar(max), nvarbinary(max)), можно увеличить их размер до 2Гб. Новый тип xml предназначен для хранения данных в формате XML и обработки этих данных, используя возможности формата. CREATE TABLE mySchema.XMLTable (recID int, xmlDoc xml) Можно также использовать XML-схемы. DECLARE @xmlVar xml (AWSchemaCollection)

Разбиение таблиц на разделы (партиципирование) Разбиение таблицы на разделы позволяет хранить табличные данные в нескольких файлах, что улучшает производительность на мультипроцессорных и многодисковых системах и облегчает управление большими таблицами. Разбиение таблицы осуществляется в три этапа:

• создается функция разбиения; CREATE PARTITION FUNCTION emailPF (nvarchar(30)) AS RANGE RIGHT FOR VALUES (‘G’,’N’)

• создается схема разбиения; CREATE PARTITION SCHEME emailPS AS PARTITION emailPF TO (fg1, fg2, fg3)

• создается партиципированная таблица. CREATE TABLE CustomerEmail (recID int, email nvarchar(30)) ON emailPS (email) Переменные fg1, fg2, fg3 – это файловые группы. Именно по этим трем файлам будет разбита таблица. В первый файл попадут email-адреса, начинающиеся c букв «A-F», во второй – «G-M», в третий – «N-Z». Узнать, в какую часть (партицию) будет записано то или иное значение, можно выполнив следующий запрос: SELECT $partition.<имя функции>(<значение>).

Page 10: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 10

Усовершенствования Data Manipulation Language

Ключевое слово OUTPUT Для создания лога, описывающего в таблице 2, скажем, ввод строк в таблицу 1, в SQL Server 2000 приходилось создавать триггеры. Теперь для этого можно использовать ключевое слово OUTPUT. Рассмотрим на примере. DECLARE @InsertDetails TABLE (ProductModelID int, InsertedBy sysname) INSERT INTO Production.ProductModel(Name, ModifiedDate)

OUTPUT inserted.ProductModelID, suser_name() INTO @InsertDetails

VALUES ('Racing Bike', getdate()) SELECT * FROM @InsertDetails Пример 4. Использование OUTPUT

Этот пример будет работать в том виде, в каком есть, если Вы подключились к БД AdventureWorks. В первом блоке создаем табличную переменную InsertDetails, в которой будем вести лог. Во втором вносим в таблицу Production.ProductModel наименование модели 'Racing Bike' и текущую дату, при этом идентификатор внесенной записи и имя пользователя вносятся в таблицу InsertDetails. В последнем блоке показываем результат запроса.

Общие табличные выражения (Common Table Expressions) Общее табличное выражение (CTE) – это именованный временный результат, основанный на запросе SELECT. WITH TopSales (SalesPersonID, NumSales) AS

(SELECT SalesPersonID, Count(*) FROM Sales.SalesOrderHeader GROUP BY SalesPersonId)

SELECT LoginID, NumSales

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 11: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 11

FROM HumanResources.Employee e INNER JOIN TopSales ON TopSales.SalesPersonID = e.EmployeeID ORDER BY NumSales DESC Пример 5. Общее табличное выражение

В первом блоке создаем CTE TopSales, во втором используем его в запросе SELECT.

Создание рекурсивных выражений Common Table Expressions Возникают случаи, когда нам нужно создавать рекурсивный запрос, т.е. объединять таблицу саму с собой. На основе CTE теперь можно создавать рекурсивные запросы. Рассмотрим на примере. SELECT ManagerID, EmployeeID FROM HumanResources.Employee WHERE ManagerID IS NULL UNION ALL SELECT e.ManagerID, e.EmployeeID FROM HumanResources.Employee e INNER JOIN HumanResources.Employee mgr ON e.ManagerID = mgr.EmployeeID Пример 6. Рекурсивные выражения

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 12: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 12

В первом блоке создаем верхушку рекурсивного дерева. Далее добавляем оператор UNION ALL. Создаем рекурсивный запрос, ссылающийся на наше CTE.

Операторы PIVOT и UNPIVOT Операторы PIVOT и UNPIVOT осуществляют переворот значений в столбцы и столбцов в значения.

PIVOT переворачивает значения в столбцы.

UNPIVOT переворачивает столбцы в значения.

Оператор APPLY Оператор APPLY позволяет осуществлять в запросе SELECT объединение таблицы с результатом функции, возвращающем таблицу. При этом функция считается для каждой строки объединяемой таблицы. Есть два варианта этого оператора: CROSS APPLY и OUTER APPLY. Их смысл тот же, что и у операторов INNER и OUTER JOIN. Рассмотрим пример. CREATE FUNCTION Sales.MostRecentOrders (@CustID AS int) RETURNS TABLE AS

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев RETURN

Page 13: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 13

SELECT TOP(3) SalesOrderID, OrderDate FROM Sales.SalesOrderHeader WHERE CustomerID = @CustID ORDER BY OrderDate DESC SELECT Name AS Customer, MR.* FROM Sales.Store CROSS APPLY Sales.MostRecentOrders(CustomerID) AS MR Пример 7. Оператор APPLY

Сначала необходимо создать функцию, которая будет возвращать результат в виде таблицы. Затем использовать оператор APPLY в запросе SELECT.

Функции упорядочивания (ranking) Ввели 4 функции ранжирования, которые помогают упорядочить строки внутри групп по выбранному столбцу. Ниже в таблице дано краткое описание этих функций. Функция Описание

RANK Возвращает ранг каждой строки в пределах группы результирующего отношения

DENSE_RANK Возвращает последовательный ранг каждой строки в пределах группы результирующего отношения

ROW_NUMBER Возвращает порядковый номер для каждой строки в пределах группы результирующего отношения

NTILE Разделяет строки в каждой группе результата по специальным номерам ранга, основанным на значении переданного параметра

На примере показано применение функции упорядочивания RANK. Подставив вместо него остальные функции, можно посмотреть их работу. SELECT P.Name Product, P.ListPrice, PSC.Name Category,

RANK() OVER(PARTITION BY PSC.Name ORDER BY P.ListPrice DESC) AS PriceBank

FROM Production.Product P JOIN Production.ProductSubCategory PSC ON P.ProductSubCategoryID=PSC.ProductSubCategoryID Пример 8. Функция RANK

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 14: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 14

Обработка структурированных исключений (structured exception) Обработка структурированных исключений давно присутствует в большинстве объектно-ориентированных языков. Как и в этих языках, в Transact SQL она реализована в виде конструкции TRY…CATCH. Рассмотрим на примере работу с этим блоком и дополнительными средствами обработки ошибок. CREATE TABLE dbo.DataTable (ColA int PRIMARY KEY, ColB int) CREATE TABLE dbo.ErrorLog (ColA int, ColB int, error int, date datetime) GO CREATE PROCEDURE dbo.AddData @a int, @b int AS SET XACT_ABORT ON BEGIN TRY BEGIN TRAN INSERT INTO dbo.DataTable VALUES (@a,@b) COMMIT TRAN END TRY BEGIN CATCH DECLARE @err int SET @err = @@error ROLLBACK TRAN INSERT INTO dbo.ErrorLog VALUES (@a,@b,@err,GETDATE()) END CATCH GO EXEC dbo.AddData 1,1 EXEC dbo.AddData 2,2 EXEC dbo.AddData 1,3 -- çäåñü áóäåò îøèáêà GO SELECT * FROM dbo.ErrorLog Пример 9. Обработка структурированных исключений

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 15: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 15

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 16: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 16

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Практическая работа. Программирование на языке Transact-SQL Цель работы: В этой работе закрепляются навыки по разбиению таблиц, созданию рекурсивных общих табличных выражений и операторы PIVOT и UNPIVOT. 1. Разбиение таблиц:

• создание файловых групп (использование заготовки); • создание функции и схемы партиципирования (см. пункт «Разбиение таблиц

на разделы»); • создание партиципированной таблицы; • проверка работоспособности путем внесения записи в таблицу.

2. Использование общих табличных выражений: • запуск примера 5, проверка его работоспособности; • создание таблицы со структурой, аналогичной примеру 6; • создание иерархической структуры данных в таблице; • создание рекурсивного запроса на своей таблице.

3. Использование операторов PIVOT и UNPIVOT: • запуск примера с PIVOT; • модификация примера для сохранения результата в таблице; • использование полученного результата в примере с UNPIVOT.

Результат работы. Усваивание общих табличных выражений за счет создания своих таблиц и запросов. Устный разбор темы недостаточно понятен. Для окончательного усваивания необходимо несколько раз самостоятельно создать запросы с общими табличными выражениями. Выполнение третьего пункта показывает обучающимся широкую применимость операторов PIVOT и UNPIVOT.

Использование XML в SQL Server 2005

Усовершенствованные возможности SQL Server 2005 для работы с XML

Конструкция FOR XML и ее использование В SQL Server 2000 была добавлена конструкция FOR XML в SELECT для генерации XML по результатам запроса. В SQL Server 2005 эта конструкция расширена. Ниже в таблице кратко описаны изменения в конструкции.

Изменение Описание

Директива ELEMENTS в режиме RAW Запросы RAW могут сформировать XML.

Поддержка значений NULL

Результаты XML могут включать пустые элементы для NULL значений.

Встроенные схемы XSD Вы можете генерировать встроенные схемы XSD.

Директива TYPE возвращает результат в

виде xml

Результаты из FOR XML запросов могут быть значениями xml, делающие возможными вложенные запросы.

Режим PATH Вы можете использовать выражения XPath для определения XML результатов.

Директива ROOT Вы можете определить корневой элемент для Ваших запросов.

Page 17: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 17

Именованные элементы Вы можете использовать именованные элементы для RAW и PATH запросов.

На примере показано применение конструкции. SELECT ProductID, Name, ListPrice, (SELECT ReviewerName, Comments FROM Production.ProductReview ProductReview WHERE ProductReview.ProductID = Product.ProductID FOR XML AUTO, ELEMENTS, TYPE) FROM Production.Product Product FOR XML AUTO Пример 7. Конструкция FOR XML

Если щелкнуть по результату левой кнопкой мыши, то на новой открывшейся вкладке отобразится полученный XML-документ.

Новые возможности и применение функции OPENXML Функция предоставляет возможность обработки документа XML и экспорта из него в стандартный табличный формат.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 18: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 18

DECLARE @doc xml SET @doc = '<?xml version="1.0" ?> <SalesInvoice InvoiceID="1000" CustomerID="123" OrderDate="2004-03-07"> <Items> <Item ProductCode="12" Quantity="2" UnitPrice="12.99"/> <Item ProductCode="41" Quantity="1" UnitPrice="17.45"/> <Item ProductCode="2" Quantity="1" UnitPrice="2.99"/> </Items> </SalesInvoice>' DECLARE @docHandle int EXEC sp_xml_preparedocument @docHandle OUTPUT, @doc SELECT * FROM OPENXML(@docHandle, 'SalesInvoice', 1) WITH (InvoiceID int, CustomerID int, OrderDate datetime, Items xml 'Items') EXEC sp_xml_removedocument @docHandle GO Пример 8. Конструкция OPEN XML В этом примере исходный документ XML, записанный в переменную @doc обрабатывается функцией sp_xml_preparedocument. Результат обработки используется в конструкции OPENXML, после чего обработанный документ удаляется из памяти. Результат представлен на рисунке.

Тип данных xml

Хранение XML-данных в базе данных Выше было написано, что для XML в Microsoft SQL Server 2005 создан свой тип данных xml. При этом можно хранить структурированные и слабоструктурированные данные XML. Имеется возможность индексировать XML, а также применять XQuery для ориентированного поиска и модифицирования данных. Microsoft SQL Server 2005 поддерживает XML схемы.

Работа с нетипизированными XML-данными (untyped XML) Для работы с нетипизированными XML-данными определяем тип данных XML в виде переменной или столбца таблицы. Затем можно присвоить значение XML одним из трех способов:

• неявное присвоение строковых значений; • явное присвоение строковых значений; • явное преобразование строковых значений.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 19: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 19

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

На примере рассмотрим каждый из трех способов. DECLARE @xmlstring nvarchar(1000) SET @xmlstring = '<Students> <Student LastName="Ivanov" FirstName="Ivan" /> <Student LastName="Petrov" FirstName="Petr" /> </Students>' DECLARE @ImpCastedXml xml SET @ImpCastedXml = @xmlstring DECLARE @ExpCastedXml xml SET @ExpCastedXml = CAST(@xmlstring AS xml) DECLARE @ConvertedXml xml SET @ConvertedXml = CONVERT(xml,@xmlstring) Пример 9. Работа с нетипизированным XML Далее можно использовать эти данные. Если XML правильно оформлен (well-formed XML), то преобразования и присвоения в формат XML пройдут верно, но, если XML неправильно оформлен, то преобразования не произойдет. '<Students> <Student LastName="Ivanov" FirstName="Ivan" />

<Student LastName="Petrov" FirstName="Petr" />’ Пример 10. Неправильно оформленный XML.

Управление схемами XML Для управления схемами XML в Microsoft SQL Server 2005 имеются три конструкции. CREATE XML SCHEMA COLLECTION <идентификатор> AS <схема> ALTER XML SCHEMA COLLECTION DROP XML SCHEMA COLLECTION Можно также просмотреть информацию о схеме SELECT * FROM sys.xml_schema_collections WHERE name = 'MySchemaCollection' и пространствах имен и компонентах в схеме.

Работа с типизованными XML-данными (typed XML) Алгоритм работы с типизированным XML тот же, что и с нетипизированным. Сначала определяем столбец или переменную. CREATE TABLE #EmployeeResume (EmployeeID int, Resume xml (MySchemaCollection)) В скобках указывается XML-схема, которой должен соответствовать присваиваемый XML. INSERT INTO HumanResources.EmployeeResume VALUES (1, '<?xml version="1.0" ?> <resume xmlns="http://cvSchemas"> ... </resume>')

Page 20: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 20

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

При работе с типизированным XML можно разрешить или запретить присваивать фрагменты XML. Для разрешения фрагментов при определении типа перед названием схемы надо указать CONTENT, для запрета – DOCUMENT.

XQuery XQuery – это язык запросов для идентификации узлов в документе XML.

Работа с выражениями XQuery Запросы производятся на основе выражений XQuery. Выражение XQuery может быть просто путем, описывающим возвращаемые узлы XML или комплексным выражением, генерирующим XML результат. /InvoiceList/Invoice[@InvoiceNo=1000] Этот запрос возвращает все элементы <Invoice> в элементе <InvoiceList>, у которых атрибут @InvoiceNo равен 1000. Язык XQuery включает операторы for, let, order by, where, return. SQL Server 2005 включает операторы for, where, return. for $i in /InvoiceList/Invoice where count($i/Items/Item)>1 return $i Этот запрос возвращает каждый элемент <Invoice>, который содержит более одного элемента <Item> в своем дочернем элементе <Items>.

Выборка XML-данных с использованием методов обработки xml-типов данных Есть четыре способа выборки данных из XML: получение фрагмента XML, получение конкретного значения из документа XML, проверка существования узла и формирование столбцов реляционных данных из XML. Получение фрагмента: SELECT xmlCol.query('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; <InvoiceNumbers> { for $i in /InvoiceList/Invoice return <InvoiceNo> {number($i/InvoiceNo)} </InvoiceNo> } </InvoiceNumbers>’) Получение значения: SELECT xmlCol.value('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; /InvoiceList/Invoice/@InvoiceNo[1]', 'int') Проверка существования узла: SELECT xmlCol.exit('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; /InvoiceList/Invoice[@InvoiceNo=1000]') Построение реляционных столбцов: SELECT StoreName, Invoices.query('declare default namespace= "http://schemas.adventure-works.com/Invoices"; <Invoices> <Store>{sql:column("StoreName")}</Store> {

Page 21: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 21

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

for $i in /InvoiceList/Invoice return $i } </Invoices>') InvoiceWithStoreName FROM Stores

Изменение XML-данных с использованием метода modify Для модифицирования данных в XML есть три оператора: insert, replace, delete. Общий формат оператора insert: insert Expression1 ( {as first | as least} into | after | before Expression2) Общий формат оператора replace Replace value of Expression1 With Expression2 Общий формат оператора delete Delete Expression SET @xmlDoc.modify('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; insert element salesperson {"Bill"} as first into (/InvoiceList/Invoice)[1]') SET @xmlDoc.modify('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; replace value of (/InvoiceList/Invoice/SalesPerson/text())[1] with "Ted"') SET @xmlDoc.modify('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; delete (/InvoiceList/Invoice/SalesPerson)[1]') SET @xmlDoc.modify('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; insert element salesperson {"Bill"} as first into (/InvoiceList/Invoice)[1]') SET @xmlDoc.modify('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; replace value of (/InvoiceList/Invoice/SalesPerson/text())[1] with "Ted"') SET @xmlDoc.modify('declare default namespace= "http://schemas.adventure-works.com/InvoiceList"; delete (/InvoiceList/Invoice/SalesPerson)[1]')

Page 22: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 22

Практическая работа: работа с XML В этой работе создаются несколько переменных типа XML. Одна для хранения нетипизированного XML, другая – для типизированного. Вводится нетипизированный правильно и неправильно оформленный XML. Создается XML-схема. Вводятся типизированные данные. Далее проводится поиск данных в XML, замена и удаление узлов.

Создание отчетов в Reporting Services

Обзор Reporting Services SQL Server Reporting Services – это серверно основанная платформа для создания

и управления табличными, матричными, графическими и произвольно оформленными отчетами. Создаваемые отчеты могут быть просмотрены и управляться через World Wide Web. SQL Server Reporting Services включает следующие компоненты:

• ряд средств для создания, управления и просмотра отчетов; • компонент сервер отчетов (Report Server) хранит и выполняет отчеты в

различных форматах. Основные выходные форматы: HTML, PDF, TIFF, Excel, CSV и др.;

• API, позволяющее разработчикам интегрировать процесс создания отчетов в различные приложения и создать свои средства для построения и управления отчетами.

Данные для отчетов можно получить из SQL Server, Analysis Services, Oracle или провайдеров данных Microsoft .NET (ODBC или OLE DB).

Служба Reporting Services Для использования возможностей Reporting Services в системе должны быть запущены две службы: SQL Server Reporting Services и SQL Server Agent. Эти службы нужно стартовать в SQL Server Configuration Manager (Пуск -> Программы -> Microsoft SQL Server 2005 -> Configuration Tools -> SQL Server Configuration Manager).

Средства проектирования отчетов Проектирование отчетов может производиться при помощи двух средств: Report Designer и Report Builder.

Report Designer Дизайнер отчетов доступен через Business Intelligence Development Studio. В нем можно создавать отчеты любой сложности. В дизайнере отчетов есть мастер отчетов (Report Wizard), который упрощает процесс создания отчетов. Им можно воспользоваться для создания простого отчета, затем доработать его до требуемого уровня.

Report Builder Конструктор отчетов доступ через любой браузер. Но предпочтительней использовать Internet Explorer 6. Формат HTTP-строки для запуска Report Builder: http://<сервер отчетов>/reports При локальном запуске конструктора отчетов строка выглядит следующим образом: http://localhost/reportsДалее на открывшейся странице нажимаем на кнопку < Report Builder >.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 23: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 23

Создание простого отчета Рассмотрим создание отчета через Report Designer. На первом этапе создадим общий источник данных для облегчения публикации и подписки на этот отчет.

Проектирование отчета Запустите Business Intelligence Development Studio. В меню File->New выберите Project… В диалоге New Project выберите тип проекта Report Server Project, в поле Name введите имя проекта и нажмите <OK>. В окне Solution Explorer в контекстном меню папки Reports выберите пункт Add New Report. Откроется окно мастера Report Wizard. На странице мастера Select the DataSource установите опции соединения, на странице Design the Query введите текст запроса. На странице Select the Report Type дважды нажмите на кнопку <Finish>. Отчет создан. Рассмотрим на рисунке подробнее дизайнер отчетов. В левой части окно видна панель ToolBox c компонентами, которые можно применять для создания отчетов. В правой части панель Solution Explorer, в которой отображена структура проекта, включающая отчеты и источники данных. В центре непосредственно вкладка дизайнера проекта. Она состоит из трех вкладок: Data, Layout, Preview. На вкладке Preview отображается непосредственно сам отчет. Здесь ничего менять нельзя. Редактирование отчета производится на двух других вкладках.

На вкладке Data редактируется источник данных отчета.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 24: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 24

На вкладке Layout отображается структура отчета, которая влияет на его внешний вид. Именно на этой вкладке можно применять компоненты панели ToolBox. Наш отчет состоит из одного компонента Table.

Дополнительные возможности Дизайнер отчетов предоставляет дополнительные возможности по форматированию, сложной сортировке, использованию различных агрегирующих и иных функций. Эти возможности доступны через пункт Properties контекстного меню элемента TextBox (например, конкретной ячейки таблицы). Имеется также возможность сделать отчет параметризованным. Значение параметра в этом случае вводится пользователем при запросе отчета. Для этого необходимо выполнить следующие шаги: 1. Создать параметр в отчете. Для этого в дизайнере отчетов на вкладке Layout на пустом поле необходимо в контекстном меню выбрать пункт Report Parameters…. В диалоговом окне Report Parameters нажмите на кнопку <Add> и заполните все необходимые поля.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 25: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 25

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 26: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 26

2. Изменить запрос источника данных, на использование параметра.

3. Просмотреть отчет, введя значение параметра.

Публикация отчетов

Развертывание отчета После того, как отчет создан, его можно опубликовать на сервере отчетов для получения общего доступа к нему. Публикацию отчетов можно производить через SQL Server Management Studio, а также, что проще, публиковать через дизайнер отчетов. Рассмотрим второй способ. Для публикации отчета надо в свойствах проекта указать хост сервера отчетов, на котором будет опубликован отчет. Окно свойств проекта можно открыть через пункт Properties контекстного меню проекта в Solution Explorer. В поле TargetServerURL вводим URL сервера отчетов. Для локального сервера надо ввести строку http://localhost/reportserver.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 27: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 27

Публикация осуществляется выбором пункта Deploy контекстного меню проекта. В окне Output отображаются результаты публикации.

Просмотр отчета Теперь можно проверить работу отчета через браузер. Вводим в строку Адрес браузера http://localhost/ReportServer/Pages/ReportViewer.aspx?%2fTestProject%2fReport1&rs:Command=Render. Такая строка непосредственно показывает наш созданный отчет. Для того, чтобы увидеть все отчета сервера отчетов, нужно ввести http://localhost/ReportServer.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 28: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 28

Экспорт отчетов При просмотре отчета его можно экспортировать в различные форматы. Для этого в браузере при просмотре отчета через Report Viewer в выпадающем списке Select a format надо выбрать формат для экспорта и нажать на ссылке Export.

Подписка на отчеты Отчеты можно не только просматривать через Web, также можно подписаться на получение отчетов двумя основными способами: запись файла по сети и доставка отчета по e-Mail.

Модификация источника данных Для получения возможности подписаться на отчет необходимо, чтобы мандаты безопасности хранились на сервере. Модифицируем источник данных нашего отчета. В SQL Server Management Studio в окне Object Explorer подключитесь к серверу Reporting Sevices. Через контекстное меню источника данных нашего отчета Home\TestProject\Report1\Data Sources\AdventureWorks вызываем свойства.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 29: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 29

Устанавливаем указатель Connecting using в положение Credentials stored securely on report server и ставим галочку у пункта Use Windows credentials when connecting to the data source. Последнее, если хотите использовать аутентификацию Windows при получении доступа к отчету. Нажмите на кнопку <OK>.

Создание подписки Теперь опция создания подписки доступна. Создание подписки доступно через SQL Server Management Studio и через браузер. Воспользуемся вторым способом. Откроем страницу http://localhost/reports. Откроется страница Report Manager. Далее по ссылкам находим наш проект и открываем его.

Вкладки над панелью управления изменятся.

Перейдем на вкладку Subscriptions и нажмем на кнопку <New Subscription>. В раскрывающемся списке Delivered by выберем метод доставки отчета. В зависимости от выбранного метода доставки нужно указать дополнительные параметры доставки. Для метода Report Server File Share это имя файла, путь доставки, опции перезаписи. Установка расписания выполнения задачи доставки осуществляется по нажатию на кнопку <Select Shedule>. Если отчет параметризован, то необходимо также ввести значения этих параметров. Затем нажатием на кнопку <OK> подтверждаем создание подписки. После завершения создания подписки можно посмотреть на вкладке Subscriptions после каждого выполнения задачи, успешно ли был доставлен отчет.

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 30: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 30

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Page 31: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 31

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Практическая работа: развертывание отчета и подписка Проделайте все вышеописанные действия для создания и подписки отчета. Попробуйте вручную скорректировать отчет, добавив в него различные компоненты панели ToolBox. Подпишитесь на отчет и проверьте работоспособность подписки.

Page 32: Разработка Microsoft SQL Server 2005 – Методическое курсу ...window.edu.ru/resource/395/39395/files/sql2005.pdf · Разработка баз данных

Разработка баз данных Microsoft SQL Server 2005 – новые возможности 32

©УЦ СамГТУ & Softline Academy, 2006 г. С.Б. Ромащев

Рекомендации по курсу Данный курс рекомендуется проводить в 4 дня, в каждом по 4 академических часа.

Разбивка тем по часам Работа с SQL Server 2005 – 2 ч.; Усовершенствования языка программирования Transact-SQL – 4 ч.; Использование XML в SQL Server 2005 – 4 ч.; Создание отчетов в Reporting Services – 2 ч.; Публикация отчетов – 2 ч; Подписка на отчеты – 2 ч.

Рекомендации по лабораторным работам Для лабораторных работ рекомендуется организовать заготовки, содержание которых в курсе не дается. Например: создание файловых групп при разбиении таблицы. Также рекомендуется разработать несколько заданий, аналогичных по сути и предоставляемых по выбору. Для нормального проведения лабораторных работ желательно использовать ПК со следующими характеристиками:

− процессор с частотой не ниже 2 ГГЦ; − объем оперативной памяти не ниже 512 Мб (лучше 1 Гб).

Для удобства работы желательно использовать мониторы c диагональю экрана 17” или 19”.

Рекомендации по использованию электронных источников При подготовке курса можно использовать материалы e-Learning. Рекомендуется использовать материалы по следующим курсам:

− Course 2937: Administering and Monitoring Microsoft® SQL Server™ 2005; − Course 2939: Programming Microsoft® SQL Server™ 2005; − Course 2944: Updating Your Reporting Skills to Microsoft® SQL Server™ 2005

Reporting Services; − Collection 2778: Writing Queries Using Microsoft® SQL Server™ 2005 Transact-

SQL; Эти материалы и многие другие по Microsoft SQL Server 2005 доступны по ссылке https://www.microsoftelearning.com/catalog/itproDev.aspx#sqlServer. Также можно рекомендовать использовать материалы MSDN, доступны через справку и на сайте http://msdn.microsoft.com/sql/learning. Информацию по базовым курсам можно получить на сайтах:

− http://it-university.ru; − http://it-university.samgtu.ru.