Презентация "Основы языка SQL"


Подписи к слайдам:
Нормализация данных

Основы языка SQL

Лекция 3.

Реляционная база данных может быть представлена как SQL-машина.

Язык SQL (Structured Query Language, язык

структурированных запросов) –

специализированный язык, предназначенный

для написания запросов к реляционной БД.

Основная единица - SQL-оператор.

Запрос к БД - один или несколько операторов языка,

интерпретируемых СУБД и позволяющих создать,

модифицировать, удалить саму БД и ее объекты.

SQL: 1970гг впервые разработан IBM для System R, назывался SEQUEL;

Стандарты: ANSI/SQL 1986г (первый), SQL-92, SQL-2003, SQL-2006, SQL-2008.

Первая коммерческая СУБД, поддерживающая SQL - Oracle V2 на машинах VAX.

SQL - декларативный язык; процедурные расширения; T-SQL, PL/SQL.

Операторы SQL делятся на несколько непересекающихся групп:

  • DDL (Data Definition Language, язык определения данных),
  • DCL (Data Control Language, язык управления данными),
  • DML (Data Manipulation Language, язык манипулирования данными),
  • TCL (Transaction Control Language, язык управления транзакциями).

Операторы DDL SQL

Операторы DDL предназначены для создания, удаления и изменения объектов БД или сервера СУБД.

Пример создания БД:

Пример создания таблицы:

Пример создания статической функции:

Создание объектов БД:

Операторы DDL SQL

Модификация объектов БД:

Операторы DDL SQL

Удаление объектов БД:

Операторы DML SQL

Иногда к этой группе относят оператор TRUNCATE – очистка таблицы.

Выборка строк из таблиц:

Добавление строк в таблицу:

Операторы DML SQL

Удаление строк из таблиц:

Изменение строк в таблицах:

Операторы TCL SQL

Операторы TCL предназначены для создания транзакций (несколько DML-операторов, которые либо все успешно выполнятся, либо все не выполняются).

Начало транзакции:

Фиксация транзакции:

Откат транзакции:

Создание контрольной

точки транзакции:

Операторы DCL SQL

Предназначены для управления процессом авторизации (процедурой проверки разрешений (permission) на выполнения определенных операций). Авторизация может выполняться на двух уровнях (у каждого свой перечень DCL-операций): на уровне сервера или на уровне БД.

Разрешениями могут обладать специальные объекты сервера (типа Login) или БД (типа User), которые объединены под общим названием – принципалы.

Выдача разрешений:

Отобрать разрешения:

Запретить разрешения, выданные ранее: