Лекция 7. Проектирование баз данных и работа с ними Веб-приложений. Введение в БД, SQL Server, ADO.NET

  • ppt
  • 11.05.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 89. Лекция 7. Проектирование баз данных и работа с ними Веб-приложений.ppt

Лекция 7. Проектирование баз данных и работа с ними Веб-приложений. Введение в БД, SQL Server, ADO.NET

Понятие «База данных»

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

2

Система управления базами данных

Система управления базами данных (СУБД) – это специализированная программа (чаще комплекс программ), предназначенная для организации и ведения базы данных
Cовременная СУБД содержит следующие компоненты:
ядро
процессор языка базы данных
подсистему поддержки времени исполнения
сервисные программы

3

Компоненты СУБД

4

Функции компонентов обработки баз данных

5

Классификация БД

По технологии хранения:
БД во вторичной памяти (традиционные)
БД в оперативной памяти (in-memory databases)
БД в третичной памяти (tertiary databases)
По содержимому:
Географические
Исторические
Научные
Мультимедийные
По степени распределенности:
Централизованные (сосредоточенные)
Распределенные

6

Модель данных

Модель данных есть формальная теория представления и обработки данных в системе управления базами данных (СУБД), которая включает, по меньшей мере, три аспекта:
структура данных
набор допустимых операций, выполняемых на структуре данных
ограничения целостности

7

Классификация БД по модели данных

Иерархические
Сетевые
Реляционные
Постреляционные
Объектно-ориентированные
Объектно-реляционные

8

Основные понятия реляционных БД

Реляционная модель данных (РМД) – логическая модель данных, прикладная теория, описывающая структурный аспект, аспект целостности и аспект обработки данных в реляционных базах данных
Основные понятия реляционных БД:
Таблицы
Индексирование

9

Внешний и первичный ключи

10

Нормальные формы

Первая нормальная форма (1NF)
Отношение находится в 1NF, если значения всех его атрибутов атомарны
Вторая нормальная форма (2NF)
Отношение находится во 2NF, если оно находится в 1NF, и каждый неключевой атрибут функционально полно зависит от ключа
Третья нормальная форма (3NF)
Отношение находится в 3 NF, если оно находится во 2 NF, и каждый неключевой атрибут нетранзитивно зависит от первичного ключа
Нормальная форма Бойса-Кодда (BCNF)
Отношение находится в BCNF, если оно находится во 3 NF, и в ней отсутствуют зависимости атрибутов первичного ключа от неключевых атрибутов

11

Транзакции

Транзакция – это неделимая, с точки зрения воздействия на СУБД, последовательность операций манипулирования данными
Свойства ACID:
Атомарность (Atomicity)
Согласованность (Consistency)
Изоляция (Isolation)
Долговечность (Durability)

12

Проектирование баз данных

Проектирование баз данных – процесс решения класса задач, связанных с созданием баз данных
Основные задачи:
обеспечение хранения в БД необходимой информации
обеспечение возможности получения данных по всем необходимым запросам
сокращение избыточности и дублирования данных
обеспечение целостности данных
Основные этапы проектирования баз данных:
Концептуальное (инфологическое) проектирование
Логическое (даталогическое) проектирование
Физическое проектирование

13

Веб-доступ к существующим БД

Преобразование содержимого БД в статические документы
Динамическое создание гипертекстовых документов
Создание информационного хранилища на основе СУБД

14

Язык SQL

SQL является инструментом, предназначенным для обработки и чтения данных, содержащихся в компьютерной базе данных

15

SQL

Язык SQL делится на несколько частей:
операторы определения данных
операторы манипуляции данными
операторы определения доступа к данным
операторы управления транзакциями
операторы определения курсора

16

Достоинства SQL

Независимость от конкретных СУБД
Переносимость с одной вычислительной системы на другую
Наличие стандартов
Реляционная основа
Возможность выполнения специальных интерактивных запросов
Обеспечение программного доступа к базам данных
Возможность различного представления данных
Возможность динамического определения данных
Декларативность

17

Недостатки SQL

Несоответствие реляционной модели данных:
повторяющиеся строки и неопределенные значения
явное указание порядка колонок слева направо
колонки без имени и дублирующиеся имена колонок
отсутствие поддержки свойства «=»
использование указателей и высокая избыточность
Сложность
Отступления от стандартов в конкретных реализациях СУБД
Сложность работы с иерархическими структурами

18

Процедурные расширения SQL популярных СУБД

19

СУБД

Расширение

InterBase/Firebird

PSQL – Procedural SQL

IBM DB2

SQL PL – SQL Procedural Language (расширяет SQL/PSM)

MS SQL Server/ Sybase ASE

Transact-SQL

MySQL

SQL/PSM – SQL/Persistent Stored Module (соответствует стандарту SQL:2003)

Oracle

PL/SQL – Procedural Language/SQL (основан на языке Ada)

PostgreSQL

PL/pgSQL – Procedural Language/PostgreSQL Structured Query Language (очень похож на Oracle PL/SQL)

Доступ к данным в .NET

ADO.NET – основная модель доступа к данным для приложений, основанных на Microsoft .NET
Linq – проект Microsoft по добавлению синтаксиса языка запросов, напоминающего SQL, в языки программирования платформы .NET Framework 3.5
ADO.NET Entity Framework – объектно-ориентированная технология доступа к данным, является ORM-решением для .NET Framework 3.5

20

Microsoft SQL Server

Microsoft SQL Server – система управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft







Источник: Microsoft SQL Server 2008, http://www.msdb.ru/Downloads/SQL2008/white_papers/ProductOverview%20RU.docx

21

ADO.NET

ADO.NET представляет собой набор библиотек, входящих в Microsoft .NET Framework предназначенных для взаимодействия с различными хранилищами данных из .NET приложений
Библиотеки ADO.NET включают все необходимые классы для подключения к источникам данных практически произвольного формата, выполнения запросов к этим источникам и получения результата
Возможность работы с отсоединенными источниками данных

22

Иерархия объектов ADO.NET

23

Уровни моделей поставщиков ADO.NET

24

Организация взаимодействия с БД в ADO.NET

Устанавливается соединение, открывается подключение к базе данных
Выполняется один или несколько запросов
Осуществляется отключение от источника данных
При необходимости переноса изменений, из отсоединенного набора данных в БД, а также при необходимости просмотра изменений, внесенных в БД другими пользователями, осуществляется подключение к источнику данных, выполняются необходимые действия, после чего производится отключение от БД

25