КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Тема 14. Преобразование базы данных к SQL Server
Теоретические сведения Microsoft Access является приложением, облегчающим переход с локальной идеологии, в рамках которой мы проводили разработку учебной базы данных «Студенты», на клиент-серверную, предназначенную для создания больших, корпоративного уровня, приложений. Информационная база данных в этом случае располагается на сервере (удаленном или локальном компьютере) и управляется сервером баз данных (специализированное приложение), а MS Access с разработанным в нем интерфейсом (формы, отчеты и т.д.) используется как клиентская программа. В настоящее время существует большое количество различного уровня серверов, используемых для построения клиент-серверных приложений: DB2, Informix, Interbase, Oracle. К числу наиболее известных и распространенных серверов относится также и MS SQL Server. Целью данной темы является изучение возможностей по управления базами данных в SQL Server с помощью хранимых процедур, пользовательских функций и триггеров. Для этого мы сначала преобразуем разработанную базу данных в формат SQL Server, предполагая, что на нашем компьютере SQL Server 2005 ранее локально установлен. Приложение MS Access позволяет вызвать Мастер, который пошагово осуществит преобразование базы данных в формат SQL Server, что и представлено на рисунках 14.1. – 14.8. Для запуска Мастера на панели «Переместить данные» (рис. 14.1) выбираем левую кнопку, которая осуществит перемещение некоторых частей или всей базы данных в SQL Server.
Рис. 14.1. Кнопка вызова Мастера преобразования в формат SQL Server Будем выполнять шаги преобразования. На первом шаге (рис.14.2) в открывшемся окне Мастера преобразования выбираем режим создания новой базы данных в SQL Server.
Рис. 14.2. Шаг 1 Мастера преобразования в формат SQL Server
116
На втором шаге (рис.14.3) указываем сервер (каждый SQL Server имеет уникальное имя, как правило, совпадающее с именем компьютера, на котором он исполняется) – выбираем в списке локальный сервер и включаем Доверительное соединение с ним. Затем задаем имя базы данных, в которую и переместим таблицы нашей базы данных, разработанной в MS Access.
Выбираем локальный сервер
Включаем режим доверительного соединения
Задаем имя новой базы данных
Рис. 14.3. Шаг 2 Мастера преобразования в формат SQL Server
На третьем шаге (рис.14.4), используя кнопки для перемещения, выберем в левом окне из списка доступных таблиц основные таблицы (Факультет, Специальности, Студенты, Успеваемость, Группа и Предмет) и переместим их в правое окно для экспорта в SQL Server.
Рис. 14.4. Шаг 3 Мастера преобразования в формат SQL Server
117
Мастер преобразования допускает преобразовать и такие свойства или атрибуты таблиц, как индексы, значения по умолчанию, связи и правила проверки на значения. Поддержка условий целостности данных может быть на основе ограничений на модификацию первичных и внешних ключей, т.е. включением режима Декларативной ссылочной целостности (DRI—Declarative Referential Integrity), иначе связь между таблицами можно организовать с помощью триггеров (triggers) обновления, вставки и удаления. Требуемые установки на четвертом шаге представлены на рисунке 14.5.
Рис. 14.5. Шаг 4 Мастера преобразования в формат SQL Server Выбранный на пятом шаге вариант (рис.14.6) предполагает, что база данных Microsoft Access будет преобразована таким образом, что в ней будут храниться все формы, отчеты и т.д., а взамен использовавшихся в ней таблиц будут подключены таблицы из созданной базы данных в SQL Server.
Рис. 14.6. Шаг 5 Мастера преобразования в формат SQL Server
118
Процесс преобразования можно увидеть в представленном на рисунке 14.7 шаге.
Рис. 14.7. Шаг 6 Мастера преобразования в формат SQL Server
По окончании работы Мастер преобразования предоставит отчет о произведенных им действиях и возникших ошибках. Мы оставим первоначально открытую базу данных Microsoft Access (рис.14.8) и убедимся в наличии внешних таблиц из SQL Server.
Вот наши внешние таблицы, расположенные в SQL Server
Рис. 14.8. Вид объектов MS Access и таблиц, преобразованных в формат SQL Server
119
Преобразованная в формат SQL Server, база данных сохраняет структуру, включая данные, индексы, параметры по умолчанию, автоматически преобразуются правила проверки доступа и поддерживаются связи между таблицами и целостность данных.
Теперь закроем MS Access и начнем работу с базой данных в локальной СУБД SQL Server 2005. Напомним, что каждый SQL Server имеет уникальное имя, как правило, совпадающее с именем компьютера, на котором он исполняется. Для работы с SQL Server 2005 используем менеджер, запуск которого производим из меню кнопки ПускMicrosoft SQL Server 2005 ® SQL Server Management Studio. Представленное на рисунке 14.9 окно позволяет осуществить присоединение к серверу (Connect to Server). Мы будем использовать локальный сервер, установленный на каждый компьютер, нам достаточно выбрать его имя, указать способ доступа с правами пользователя-владельца (Windows Authentication) и нажать кнопку Connect.
Рис. 14.9. Вид окна присоединения к SQL Server 2005 Работа с базами данных производится в окне приложения Microsoft SQL Server Management Studio, вид которого представлен на рисунке 14.10. Браузер объектов (левое окно, фрагмент которого увеличен справа) предоставляет пользователю древовидную структуру, в которой можно увидеть все имеющиеся базы данных на данном сервере. Можно открыть для просмотра нужную базу данных (в наших примерах будут использоваться базы данных Студенты2007SQL или ДляSQLSQL) и увидеть ее объекты: схемы, таблицы, представления, хранимые процедуры, функции и др. Для каждой выбранной таблицы можно просмотреть ее столбцы, индексы, ограничения и ключи, а также разработать триггеры. Для каждого объекта-таблицы правой кнопкой можно вызвать контекстное меню, которое позволит его просмотреть, отредактировать данные, выйти в режим Конструктора, создать скрипт (script) – инструкцию на языке SQL и получить на языке DDL управляющий код создания объекта, обновить данные или выполнить ряд других действий. На рисунке 14.11 можно увидеть, как просмотреть содержимое таблицы: оно открывается на вкладке и отображает все записи таблицы. Не правда ли – очень похоже на MS Access. В каждой базе данных существует специальное имя пользователя - Data Base Owner (DBO), являющегося владельцем базы данных. DBO может выполнять любые манипуляции c объектами и назначать права другим пользователям. К каждой таблице добавлен префикс ее владельца. Справа на рисунке 14.10 мы видим структуру нашей таблицы Факультет. Для столбцов с атрибутами видны типы данных (int, nvarchar), ограничения (null, not null), ключи: PK – означает первичный ключ (Primary Key), соответственно FK – ключ связи (Foreign Key).
120
Рис. 14.10. Вид приложения по управлению базами данных в SQL Server 2005
Рис. 14.11. Выбор режима просмотра таблицы в SQL Server 2005
Контекстное меню Edit для таблицы Факультет позволит получить sql-скрипт (рис.14.12), который содержит инструкцию на языке DDL, позволяющий создать таблицу соответствующей конфигурации.
121
Рис. 14.12. Фрагмент скрипта на создание таблицы Факультет в SQL Server 2005
Контекстное меню Design для таблицы Факультет позволит перевести ее в режим Конструктора (рис.14.13), в котором, как и в MS Access, можно корректировать поля таблицы, настраивать их свойства и назначать ключи.
Рис. 14.13. Конструктор таблиц в SQL Server 2005
И, наконец, схема данных. Ее создают через пункт Database Diagrams ® New Database Diagram ® Add Tables (рис.14.14). Вид самой диаграммы приведен на рисунке 14.15.
122
Рис. 14.14. Добавление таблиц для построения диаграммы в SQL Server 2005
Рис. 14.15. Фрагмент диаграммы базы данных «Студенты2007SQL» в SQL Server 2005
Рассмотрим особенности, характерные для управления базами данных в SQL Server.
Таблицы (table) - собственно хранилища данных; вся системная информация также хранится в таблицах, соответственно, системных; возможно применение временных таблиц.
Временные таблицы Оператор SELECT... INTO можно применять для помещения строк как в постоянные таблицы, так и во временные – располагающиеся в системной базе данных tempdb. Для локальных временных таблиц (видимых только для текущего соединения или пользователя) необходимо поместить перед именем таблицы символ "#". Для глобальных временных таблиц (видимых для всех пользователей), соответственно, два символа "#" (т.е. "##"). Временная таблица автоматически уничтожается после отсоединения от SQL Server всех пользователей. На рисунке 14.16 продемонстрирован пример 14.1.
123
Пример 14.1. Найти самое популярное имя, используя временную таблицу. SELECT Имя, Count(Имя) AS Kol into #imena FROM Студенты GROUP BY Имя HAVING (Count(Имя)>1) GO select Имя, Kol from #imena where (Kol=(select max(Kol)from #imena))
Цепочка запросов
Результат выполнения запроса
Временная таблица
Рис. 14.16. Демонстрация использования временной таблицы в SQL Server 2005
Дата добавления: 2015-05-09; Просмотров: 1074; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |