Слайд 1Lesson 1
СУБД и модели данных
Слайд 2Система Управления Базами Данных
СУБД - это комплекс языковых и программных
средств, предназначенный для создания, ведения и совместного использования баз данных
многими пользователями.
Обычно, СУБД как и БД различают по используемой модели данных. Так, СУБД, основанные на использовании реляционной модели данных, называют реляционными СУБД.
Client
Server
Слайд 3Классификация СУБД
По технологии обработки данных базы данных подразделяются на централизованные
и распределенные.
Централизованная база данных хранится в памяти одной вычислительной системы.
Если эта вычислительная система является компонентом сети ЭВМ, возможен распределенный доступ к такой базе. Такой способ использования баз данных часто применяют в локальных сетях ПК.
Распределенная база данных состоит из нескольких, возможно пересекающихся или даже дублирующих друг друга частей, хранимых в различных ЭВМ вычислительной сети. Работа с такой базой осуществляется с помощью системы управления распределенной базой данных (СУРБД).
Слайд 4Классификация СУБД
По способу доступа:
файл-серверные
клиент-серверные
встраиваемые
Слайд 5Классификация СУБД
Файл-серверные. Архитектура систем БД с сетевым доступом предполагает выделение
одной из машин сети в качестве центрального сервера файлов. На
такой машине хранится совместно используемая централизованная БД. Все другие машины сети выполняют функции рабочих станций, с помощью которых поддерживается доступ пользовательской системы к централизованной базе данных. Файлы базы данных в соответствии с пользовательскими запросами передаются на рабочие станции, где в основном и производится обработка. При большой интенсивности доступа к одним и тем же данным производительность информационной системы падает. Пользователи могут создавать также на рабочих станциях локальные БД, которые используются ими монопольно.
Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.
Слайд 6Классификация СУБД
Клиент-серверные. В этой концепции подразумевается, что помимо хранения централизованной
базы данных центральная машина (сервер базы данных) должна обеспечивать выполнение
основного объема обработки данных. Запрос на данные, выдаваемый клиентом (рабочей станцией), порождает поиск и извлечение данных на сервере. Извлеченные данные, но не файлы транспортируются по сети от сервера к клиенту. Спецификой архитектуры клиент-сервер является использование языка запросов SQL.
Примеры: Oracle, MS SQL Server, PostgreSQL, MySQL, Firebird, Interbase, IBM DB2, Informix, Caché.
Слайд 7Классификация СУБД
Встраиваемая СУБД — СУБД, которая может поставляться как составная
часть некоторого программного продукта, не требуя процедуры самостоятельной установки. Встраиваемая
СУБД предназначена для локального хранения данных своего приложения и не рассчитана на коллективное использование в сети. Физически встраиваемая СУБД чаще всего реализована в виде подключаемой библиотеки. Доступ к данным со стороны приложения может происходить через SQL либо через специальные программные интерфейсы.
Примеры: SQLite, Firebird Embedded, Microsoft SQL Server Compact.
Слайд 8SQL Server Management Studio
Среда SQL Server Management Studio — это интегрированная
среда для доступа, настройки, администрирования, разработки всех компонентов SQL Server
и управления ими.
В SQL Server Management Studio большое число графических средств сочетается с набором полнофункциональных редакторов скриптов для доступа разработчиков и администраторов.
Слайд 9БАЗА ДАННЫХ (Data Base)
База данных – это совокупность связанных данных,
организованных по определенным правилам.
Эти правила предусматривают общие принципы описания, манипулирования
и хранения данными.
Основная задача БД - хранение и предоставление доступа к данным.
Слайд 10Модели данных
Модель данных - совокупность структур данных и операций их
обработки.
Модель включает три основных аспекта:
аспект структуры: методы описания
типов и логических структур данных в базе данных
аспект манипуляции: методы манипулирования данными
аспект целостности: методы описания и поддержки целостности базы данных
Слайд 11Модели данных
Три основных типа моделей данных:
1. иерархическая
2. сетевая
3.
реляционная.
Слайд 12Иерархическая модель
Представляет собой совокупность элементов, расположенных в порядке их подчинения
от общего к частному и образующих перевернутое по структуре дерево
(граф).
Файловая система
Реестр Windows
Active Directory (LDAP)
Слайд 13Иерархическая модель
Основные элементы структуры иерархической БД: уровень, узел (объект, экземпляр
сегмента) и связь.
Узел - это совокупность атрибутов данных, описывающих некоторый
объект. На схеме иерархического дерева узлы представляются вершинами графа. Каждый узел на более низком уровне связан только с одним узлом, находящимся на более высоком уровне.
Иерархическое дерево имеет только одну вершину, не подчиненную никакой другой вершине и находящуюся на самом верхнем - первом уровне. Зависимые (подчиненные) узлы находятся на втором, третьем и т. д. уровнях. Количество деревьев в базе данных определяется числом корневых записей. К каждой записи базы данных существует только один иерархический путь от корневой записи.
Слайд 14Сетевая модель
В сетевой модели при тех же основных понятиях (уровень,
узел, связь) каждый элемент может быть связан с любым другим
элементом.
Слайд 15Реляционная модель
Каждая реляционная таблица представляет собой двумерный массив и обладает
следующими свойствами:
Каждый элемент таблицы соответствует одному элементу данных.
Все столбцы в
таблице однородные, т.е. все элементы в столбце имеют одинаковый тип и длину.
Каждый столбец имеет уникальное имя.
Одинаковые строки в таблице отсутствуют.
Порядок следования строк и столбцов может быть произвольным.
Слайд 16Реляционная База Данных
Реляционная база данных - это совокупность связанных данных,
хранящаяся в двухмерных таблицах.
Слайд 17Основные объекты Базы Данных
Для обеспечения работы СУБД с базой данных
используется объекты базы данных.
Основные объекты БД:
1) Объект База Данных.
2) Таблицы.
3)
Представления.
4) Роли.
5) Пользователи.
Слайд 18Команда GO
Команда GO информирует программы SQL Server об окончании
пакета инструкций Transact-SQL, но это не инструкция Transact-SQL.
Программы SQL
Server интерпретируют команду GO как сигнал о том, что им следует отправить текущий пакет инструкций Transact-SQL экземпляру SQL Server.
Инструкция Transact-SQL не может располагаться на той же строке, что и команда GO. Тем не менее, строка с командой GO может содержать комментарии.
GO — ограничитель пакета инструкций. В процессе синтаксического анализа, если SQL Server обнаруживает ключевое слово GO, пакет считается завершенным и весь последующий код считается принадлежащим другому пакету. Это верно даже если эта команда находится в блоке комментариев.
Слайд 19Комментарии
Комментарии используются для создания пояснений для блоков сценариев, а также
для временного отключения команд при отладке скрипта.
Комментарии бывают как строковыми,
так и блоковыми:
-- — строковый комментарий исключает из выполнения только одну строку, перед которой стоят два минуса.
/* */ — блоковый комментарий исключает из выполнения целый блок команд, заключенный в указанную конструкцию.
Слайд 20Идентификаторы
Идентификаторы — это специальные символы, которые используются с переменными для идентификации
их типа или для группировки слов в переменную.
Типы идентификаторов:
@ — идентификатор локальной переменной (пользовательской).
@@ — идентификатор глобальной переменной (встроенной).
# — идентификатор локальной таблицы или процедуры.
## — идентификатор глобальной таблицы или процедуры.
[ ] — идентификатор группировки слов в переменную.
Слайд 21Переменные
Переменные используются в сценариях и для хранения временных данных. Чтобы
работать с переменной, ее нужно объявить, притом объявление должно быть
осуществлено в той транзакции, в которой выполняется команда, использующая эту переменную.
После завершения транзакции, то есть после команды GO, переменная уничтожается.
Объявление переменной выполняется командой DECLARE, задание значения переменной осуществляется командой SET, извлечение SELECT:
DECLARE @EmpID int, @EmpName varchar(40)
SET @EmpID = 1
SELECT @EmpName
GO
У переменной может быть любой тип данных кроме text, ntext, image.
Слайд 22Переменные
Переменные бывают локальными (начинаются с символа @) и глобальными (с
@@). Локальные переменные мы можем создавать и использовать, а глобальные
переменные мы можем только считывать.
Слайд 23Типы данных (Data Types)
Семь категорий типов данных в T-SQL:
1. Целые
числа
2. Числа с фиксированной запятой
3. Числа с плавающей запятой
4.
Дата и время
5. Текстовые данные
6. Двоичные данные
7. Пользовательские типы