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

Программирование приложений баз данных с использованием СУБД MS SQL Server. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
В. В. ШАЦКОВ
ПРОГРАММИРОВАНИЕ ПРИЛОЖЕНИЙ
БАЗ ДАННЫХ С ИСПОЛЬЗОВАНИЕМ
СУБД MS SQL SERVER
Министерство образования и науки
Российской Федерации
Санкт-Петербургский государственный
архитектурно-строительный университет
В. В. ШАЦКОВ
ПРОГРАММИРОВАНИЕ ПРИЛОЖЕНИЙ
БАЗ ДАННЫХ С ИСПОЛЬЗОВАНИЕМ
СУБД MS SQL SERVER
Учебное пособие
Санкт-Петербург
2015
2
УДК 681.3.07
Рецензенты: д-р физ.-мат. наук, профессор Б. Г. Вагер (СПбГАСУ);
д-р физ.-мат. наук, профессор Е. Л. Генихович (ГГО им. А. И. Воейкова, Санкт-Петербург)
Шацков, В. В.
Программирование приложений баз данных с использованием СУБД MS SQL Server: учеб. пособие / В. В. Шацков; СПбГАСУ. – СПб., 2015. – 77 с.
ISBN 978-5-9227-0607-0
Клиент-серверная система управления базами данных MS SQL Server была разработана для поддержки крупных баз данных в различных областях, связанных с хранением и управлением больших объемов структурированных данных. В данном пособии рассматриваются вопросы конфигурирования SQL Server, создания баз данных и их объектов, использования графического инструмента MS SQL Server Management Studio для манипулирования дан­ными и администрирования MS SQL Server, использования встроенного язы ка Transact-SQL для создания хранимых процедур и пользовательских функ­ций. Пособие также знакомит студентов с различными подходами, исполь­зуемыми при реализации доступа к данным, хранящимся в базах MS SQL Server, таких как ODBC, OLE DB и ADO. Пособие предназначено для сту­дентов специальностей «Прикладная математика и информатика» и «При­кладная математика», изучающих курс «Базы данных».
Табл. 3. Ил. 27. Библиогр.: 4 назв.
ISBN 978-5-9227-0607-0
В. В. Шацков, 2015  Санкт-Петербургский государственный
архитектурно-строительный университет, 2015
-
2
Введение
На сегодняшний день реляционные базы уверенно являются неотъемлемой частью большинства информационных систем. В этой области прикладного программирования стремительно раз­виваются новые технологии, платформы реализации и среды разра­ботки приложений. Данное пособие предназначено для получения основных сведений о клиент-серверной системе управления базами данных (СУБД) Microsoft SQL Server и освоения инструментальных средств работы с СУБД
в прикладных программ баз данных.
3
1. ОСНОВНЫЕ КОМПОНЕНТЫ СУБД
1.1. Службы MS SQL Server
Microsoft SQL Server – это клиент-серверная система управле­ния реляционными базами данных, ориентированная на работу под управлением операционных систем Microsoft Windows.
Система реализуется в виде нескольких служб (системных сервисов), каждая из которых отвечает за выполнение определен­ных задач
.
1. Служба SQL Server (MSSQLServer) является ядром СУБД
и выполняет следующие основные функции:
распределяет ресурсы, выделенные для СУБД операцион- ной системой, между работающими в данный момент с системой пользователями;
организует выполнение запросов, хранимых процедур и ко- манд языка Transact-SQL, подготовленных пользователями;
обеспечивает безопасность системы, т. е. осуществляет ау- тентификацию пользователей и предоставляет
доступ к данным
только на основании имеющихся у них прав;
отвечает за согласованность и целостность данных, предот- вращая логические проблемы.
Если данная служба не запущена, подключение пользователей к серверу невозможно. Работа остальных служб также возможна только при функционировании MSSQLServer.
2. Служба SQLServerAgent отвечает за автоматическое испол-
нение назначенных администратором заданий, выполняет
отслежи­вание определенных событий и сопоставленных им заданий (на­пример, создание резервных копий, отправка сообщения админист­ратору о возникшей проблеме и т. п.).
3. Служба Full-TextFilterDaemon позволяет реализовать поиск
символьной информации в полях таблиц баз данных. С помощью этой службы осуществляется поиск слов и фраз, причем в результа­те могут быть отражены
склоняемые формы глаголов и существи-
тельных.
4
4. Служба IntegrationServices выполняет следующие задачи:
отслеживание выполнения пакетов служб IntegrationServices; отображение в иерархическом виде пакетов и папок служб
IntegrationServices, которые физически могут храниться в разных местах.
5. Службы AnalysisServices (SSAS) обеспечивают интерактив-
ную аналитическую обработку (OLAP) и функции интеллектуаль­ного анализа данных для приложений бизнес-аналитики. Службы AnalysisServices поддерживают OLAP, позволяя разрабатывать и создавать многомерные
структуры, которые содержат данные, собранные из других источников, таких как реляционные базы дан­ных, а также управлять этими структурами. Для приложений ин­теллектуального анализа данных службы AnalysisServices позволя­ют разрабатывать, создавать и наглядно представлять модели интеллектуального анализа данных, построенные на основе других источников данных, используя с этой целью широкий спектр стан­дартных алгоритмов интеллектуального анализа данных.
6. Служба ReportingServices – эта служба представляет сер-
верный компонент, который отвечает за генерацию отчетов, предос­тавление их пользователям, выполнение различных служебных операций с отчетами.
7. Служба SQLServerBrowser предназначена для формирова-
ния списка доступных в сети SQL-серверов
.
1.2. Системные базы данных
База данных является базовым элементом SQL Server, своего рода контейнером, в котором располагаются таблицы с данными, а также различные объекты – индексы, представления, хранимые процедуры и т. д. Базы данных бывают системные, поставляемые вместе с СУБД, и пользовательские.
MS SQL Server содержит четыре системные базы данных:
master;
model;
msdb;
tempdb.
Рассмотрим назначение каждой системной базы данных.
База данных master – это главная база данных, в которой хра­нится вся системная информация о конфигурации сервера, имею-
5
щихся на сервере пользовательских базах данных, пользователях, имеющих доступ к серверу, и т. д. Остальные системные базы име­ют второстепенное значение
База данных model используется как шаблон для создания лю­бой новой базы данных. Таким образом, можно внести изменения в эту БД, чтобы создаваемые вновь базы содержали нужные изме­нения. Например, можно
добавить группу пользователей, которая должна быть по умолчанию во всех новых БД. Поскольку model ис­пользуется в качестве шаблона, то она обязательно должна присут­ствовать для нормального функционирования сервера. Кроме того, следует иметь в виду, что новые БД должны иметь размер не мень­ше, чем БД model.
В базе данных msdb служба SQLServerAgent хранит
все сис­темные задачи. Например, если задано резервирование по расписа­нию, то в msdb появится специальная запись. Аналогичным обра­зом данную БД используют и другие подсистемы MS SQL Server, например, SQLServerIntegrationServices.
База данных tempdb фактически является рабочей областью для MS SQL Server. Например, если исполняется большой сложный запрос, для выполнения которого MS SQL Server требуется создать временную таблицу, то такая таблица будет
создана в БД tempdb. То же самое произойдет и в случае, если пользователь сам создает временную таблицу, хотя пользователю может казаться, что он соз­дает ее в текущей базе. В отличие от других БД, tempdb и сама яв­ляется временной: она воссоздается каждый раз заново при запуске
MS SQL Server.
1.3. Средства администрирования
1.3.1. SQL Server Configuration Manager
Предоставляет следующие возможности: управление работой всех служб MS SQL Server, рассмот-
ренных выше. Можно запустить, приостановить или полностью ос­тановить любую из описанных выше служб, а также указать, от имени какого пользователя ее следует запускать;
определение параметров сетевых библиотек, которые обес-
печивают взаимодействие с MS SQL Server. Можно выбрать один или сразу несколько методов доступа
к серверу:
6
именованные каналы (Named Pipes) – технология похожа на
использование сокетов, применяется в случае недоступности про­токолов TCP/IP;
стек протоколов TCP/IP (используется по умолчанию) –
подходит для использования через сеть Интернет;
общая память (Shared Memory) – подходит для локального
использования, например, веб-приложение и MS SQL Server нахо­дятся на одном компьютере. Обеспечивает максимальную скорость работы;
виртуальный интерфейсный адаптер (Virtual Interface
Adapter, VIA) –
используется для подключений типа сервер-сервер
с применением специализированного оборудования.
После настройки методов доступа к серверу можно произве-
сти конфигурацию клиентских протоколов. Уз е л SQL Native Client
10.0 Configuration содержит два раздела: Client protocols и Aliases (рис. 1).
Рис. 1. Окно утилиты SQL Server Configuration Manager
1.3.2. SQL Server Management Studio
Утилита Management Studio позволяет выполнять следующее:
управлять настройками MS SQL Server;  конфигурировать систему безопасности: управление роля-
ми, учетными записями, удаленными серверами;
7
работать со структурой баз данных: создавать, редактиро-
вать и удалять БД и элементы БД;
управлять выполнением заданий по расписанию; показывать текущую активность: текущих пользователей,
заблокированные объекты, показатели производительности и т. д.
Перед началом работы с сервером необходимо подключиться
к нему, указав следующую информацию:
1. Тип сервера. Здесь следует
выбрать, к какой именно службе
необходимо подключиться: Database Engine (MSSqlServer), т. е. к основной службе сервера, AnalysisServices, ReportServer или
IntegrationServices.
2. Имя сервера. Позволяет указать, к какому серверу будет
осуществляться подключение.
3. Проверка подлинности – способ аутентификации, можно
выбрать Windows Authentication или SQL Server Authentication. Спо­соб Windows Authentication использует учетную запись, под которой текущий пользователь осуществил вход в Windows. SQL Server Authentication использует учетные записи собственной
системы без-
опасности (рис. 2).
Рис. 2
Management Studio позволяет открывать несколько окон запро­сов и работать с несколькими базами данных одновременно. В каж­дом окне устанавливается собственное соединение с MS SQL
8
Server, котор ое описано в SQL Server Configuration Manager, на ос­нове различных учетных записей пользователей и их паролей.
Для того чтобы написать новый запрос к базе данных, необхо-
димо выполнить команду Создать запрос, расположенную на пане­ли инструментов Management Studio. В результате откроется новая вкладка, в которой можно писать SQL-код (рис. 3).
Рис. 3
Тогда станет доступно следующее:
заголовок, в котором указывается логическое имя сервера,
текущая база данных и имя пользователя, установившего соедине­ние;
область запроса, используемая для ввода запросов, переда-
ваемых MS SQL Server;
область результатов, в которой отображаются результаты
выполнения запроса.
9
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]