Скачать презентацию ЯЗЫК ЗАПРОСОВ SQL Шалатова И М Мамулина Скачать презентацию ЯЗЫК ЗАПРОСОВ SQL Шалатова И М Мамулина

SQL.pptx

  • Количество слайдов: 42

ЯЗЫК ЗАПРОСОВ SQL Шалатова И. М. , Мамулина В. С. ЯЗЫК ЗАПРОСОВ SQL Шалатова И. М. , Мамулина В. С.

ПОНЯТИЕ SQL (Structured Query Language — язык структурированных запросов) — универсальный компьютерный язык, применяемый ПОНЯТИЕ SQL (Structured Query Language — язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных БД, таких как Microsoft Office Access, Microsoft SQL Server, Oracle, My. SQL и другие. 2 БД_5 -SQL_запросы_2011

ПОНЯТИЕ SQL В отличие от многих языков программирования SQL удобочитаем и понятен даже новичкам. ПОНЯТИЕ SQL В отличие от многих языков программирования SQL удобочитаем и понятен даже новичкам. SQL является, прежде всего, информационно-логическим языком, предназначенным для описания, изменения и извлечения данных, хранимых в реляционных БД. SQL нельзя назвать языком программирования. 3 БД_5 -SQL_запросы_2011

ДОСТОИНСТВА SQL : • имеет унифицированный набор инструкций, которые можно использовать во всех СУБД, ДОСТОИНСТВА SQL : • имеет унифицированный набор инструкций, которые можно использовать во всех СУБД, поддерживающих этот язык; • SQL является международным стандартом, признанным такими комитетами по стандартизации, как ISO и ANSI; • помогает создавать улучшенные запросы и упрощает исправление запросов. 4 БД_5 -SQL_запросы_2011

SQL ПОЗВОЛЯЕТ ВЫПОЛНЯТЬ СЛЕДУЮЩИЙ НАБОР ОПЕРАЦИЙ: v создание в базе данных новой таблицы; v SQL ПОЗВОЛЯЕТ ВЫПОЛНЯТЬ СЛЕДУЮЩИЙ НАБОР ОПЕРАЦИЙ: v создание в базе данных новой таблицы; v добавление в таблицу новых записей; v удаление записей; v выборка записей из одной или нескольких таблиц (в соответствии с заданным условием); v изменение записей; v изменение структур таблиц. БД_5 -SQL_запросы_2011 5

ТИПЫ ЗАПРОСОВ: v запросы на создание или изменение в БД новых или существующих объектов ТИПЫ ЗАПРОСОВ: v запросы на создание или изменение в БД новых или существующих объектов (при этом в запросе описывается тип и структура создаваемого или изменяемого объекта); v запросы на получение данных; v запросы на добавление новых данных v запросы на удаление данных; v обращения к СУБД. БД_5 -SQL_запросы_2011 6

ВСЕ SQL-ЗАПРОСЫ − ЭТО ОПЕРАЦИИ НАД ТАБЛИЦАМИ. В соответствии с этим, запросы делятся на: ВСЕ SQL-ЗАПРОСЫ − ЭТО ОПЕРАЦИИ НАД ТАБЛИЦАМИ. В соответствии с этим, запросы делятся на: запросы, оперирующие самими таблицами запросы для создания новых таблиц запросы, оперирующие с отдельными записями или наборами записей. вставка новой строки изменение значений полей строки или набора строк запросы для изменения уже существующих таблиц удаление строки или набора строк БД_5 -SQL_запросы_2011 7

Самый главный вид запроса — это запрос, возвращающий (пользователю) некоторый набор строк, с которым Самый главный вид запроса — это запрос, возвращающий (пользователю) некоторый набор строк, с которым можно осуществить одну из трёх операций: изменить все записи набора просмотреть полученный набор удалить все записи набора БД_5 -SQL_запросы_2011 8

Язык SQL представляет собой совокупность: операторов инструкций вычисляемых функций SQL является непроцедурным языком, не Язык SQL представляет собой совокупность: операторов инструкций вычисляемых функций SQL является непроцедурным языком, не содержит операторов управления, организации 9 подпрограмм, ввода-вывода и т. п. БД_5 -SQL_запросы_2011

ТИПЫ ДАННЫХ SQL строковые с плавающей точкой (дробные числа) и целые числа дата и ТИПЫ ДАННЫХ SQL строковые с плавающей точкой (дробные числа) и целые числа дата и время 10 БД_5 -SQL_запросы_2011

ОПЕРАТОРЫ операторы определения данных (Data Definition Language, DDL) CREATE создает объект БД (саму базу, ОПЕРАТОРЫ операторы определения данных (Data Definition Language, DDL) CREATE создает объект БД (саму базу, таблицу, представление, пользователя и т. д. ) ALTER изменяет объект DROP удаляет объект операторы манипуляции данными (Data Manipulation Language, DML) SELECT считывает данные, удовлетворяющие заданным условиям INSERT добавляет новые данные UPDATE изменяет существующие данные DELETE удаляет данные БД_5 -SQL_запросы_2011 11

ОПЕРАТОРЫ операторы определения доступа к данным (Data Control Language, DCL) GRANT предоставляет пользователю (группе) ОПЕРАТОРЫ операторы определения доступа к данным (Data Control Language, DCL) GRANT предоставляет пользователю (группе) разрешения на определенные операции с объектом REVOKE отзывает ранее выданные разрешения DENY задает запрет, имеющий приоритет над разрешением операторы управления транзакциями (Transaction Control Language, TCL) COMMIT применяет транзакцию ROLLBACK откатывает все изменения, сделанные в контексте текущей транзакции. SAVEPOINT делит транзакцию на более мелкие участки БД_5 -SQL_запросы_2011 12

ПРИМЕРЫ SQL ЗАПРОСОВ 13 БД_5 -SQL_запросы_2011 ПРИМЕРЫ SQL ЗАПРОСОВ 13 БД_5 -SQL_запросы_2011

ОПЕРАТОРЫ ОПРЕДЕЛЕНИЯ ДАННЫХ 14 БД_5 -SQL_запросы_2011 ОПЕРАТОРЫ ОПРЕДЕЛЕНИЯ ДАННЫХ 14 БД_5 -SQL_запросы_2011

Операторы определения данных ОПЕРАТОР CREATE TABLE teachers ([id_teachers] integer, [FIO] text, [kafedra] text, [date_of_birth] Операторы определения данных ОПЕРАТОР CREATE TABLE teachers ([id_teachers] integer, [FIO] text, [kafedra] text, [date_of_birth] date, [zarplata] integer, CONSTRAINT [Индекс1] PRIMARY KEY ([id_teachers])); 15 БД_5 -SQL_запросы_2011

Операторы определения данных ОПЕРАТОР CREATE TABLE Режим SQL Режим таблицы 16 БД_5 -SQL_запросы_2011 Операторы определения данных ОПЕРАТОР CREATE TABLE Режим SQL Режим таблицы 16 БД_5 -SQL_запросы_2011

Операторы определения данных ALTER: ДОБАВЛЕНИЕ СТОЛБЦА alter table students add [телефон] text DROP COLUMN: Операторы определения данных ALTER: ДОБАВЛЕНИЕ СТОЛБЦА alter table students add [телефон] text DROP COLUMN: УДАЛЕНИЕ СТОЛБЦА alter table students drop column телефон DROP TABLE: УДАЛЕНИЕ ТАБЛИЦЫ DROP TABLE teachers БД_5 -SQL_запросы_2011 17

ОПЕРАТОРЫ МАНИПУЛИРОВАНИЯ ДАННЫМИ БД_5 -SQL_запросы_2011 18 ОПЕРАТОРЫ МАНИПУЛИРОВАНИЯ ДАННЫМИ БД_5 -SQL_запросы_2011 18

ИСХОДНЫЕ ДАННЫЕ: БД «ДИПЛОМНОЕ ПРОЕКТИРОВАНИЕ» 19 БД_5 -SQL_запросы_2011 ИСХОДНЫЕ ДАННЫЕ: БД «ДИПЛОМНОЕ ПРОЕКТИРОВАНИЕ» 19 БД_5 -SQL_запросы_2011

ПРЕДИКАТЫ представляют собой выражения, принимающие истинностное значение. Они могут представлять собой как одно выражение, ПРЕДИКАТЫ представляют собой выражения, принимающие истинностное значение. Они могут представлять собой как одно выражение, так и любую комбинацию из неограниченного количества выражений, построенную с помощью булевых операторов AND, OR или NOT. Кроме того, в этих комбинациях могут использоваться круглые скобки для конкретизации порядка выполнения операций. 20 БД_5 -SQL_запросы_2011

ПРЕДИКАТЫ Предикат в языке SQL может принимать одно из трех значений TRUE (истина), FALSE ПРЕДИКАТЫ Предикат в языке SQL может принимать одно из трех значений TRUE (истина), FALSE (ложь) или UNKNOWN (неизвестно). Исключение составляют следующие предикаты: NULL (отсутствие значения), EXISTS (существование), UNIQUE (уникальность) и MATCH (совпадение), которые не могут принимать значение UNKNOWN. БД_5 -SQL_запросы_2011 21

ПРИМЕРЫ ПРЕДИКАТОВ: DISTINCT -выбор уникальных строк; ORDER BY <список полей> DESC – сортировка по ПРИМЕРЫ ПРЕДИКАТОВ: DISTINCT -выбор уникальных строк; ORDER BY <список полей> DESC – сортировка по убыванию; ORDER BY <список полей> ASC – сортировка по возрастанию(принимается по умолчанию); WHERE <предикат> - реализует горизонтальную выборку; AND – «и» OR – «или» NOT – «не» БД_5 -SQL_запросы_2011 22

Операторы манипулирования данными Оператор SELECT Режим SQL: Режим таблицы: 23 БД_5 -SQL_запросы_2011 Операторы манипулирования данными Оператор SELECT Режим SQL: Режим таблицы: 23 БД_5 -SQL_запросы_2011

Операторы манипулирования данными Оператор SELECT Предикат BETWEEN Синтаксис BETWEEN: = <Проверяемое выражение> [NOT] BETWEEN Операторы манипулирования данными Оператор SELECT Предикат BETWEEN Синтаксис BETWEEN: = <Проверяемое выражение> [NOT] BETWEEN <Начальное выражение> AND <Конечное выражение> 24 БД_5 -SQL_запросы_2011

Операторы манипулирования данными Режим SQL: Режим таблицы: 25 БД_5 -SQL_запросы_2011 Операторы манипулирования данными Режим SQL: Режим таблицы: 25 БД_5 -SQL_запросы_2011

Операторы манипулирования данными Оператор SELECT Предикат IN Синтаксис IN = <Проверяемое выражение> [NOT] IN Операторы манипулирования данными Оператор SELECT Предикат IN Синтаксис IN = <Проверяемое выражение> [NOT] IN (параметр1, параметр2) 26 БД_5 -SQL_запросы_2011

Операторы манипулирования данными Режим SQL: Режим таблицы: 27 БД_5 -SQL_запросы_2011 Операторы манипулирования данными Режим SQL: Режим таблицы: 27 БД_5 -SQL_запросы_2011

Операторы манипулирования данными Переименование столбцов Имена столбцов, указанные в предложении SELECT, можно переименовать. Это Операторы манипулирования данными Переименование столбцов Имена столбцов, указанные в предложении SELECT, можно переименовать. Это делает результаты более читабельными, поскольку имена полей в таблицах часто сокращают с целью упрощения набора. Ключевое слово AS, используемое для переименования, согласно стандарту можно и опустить, т. к. оно неявно подразумевается. 28 БД_5 -SQL_запросы_2011

Операторы манипулирования данными Переименование столбцов Режим SQL: Режим таблицы: БД_5 -SQL_запросы_2011 29 Операторы манипулирования данными Переименование столбцов Режим SQL: Режим таблицы: БД_5 -SQL_запросы_2011 29

Операторы манипулирования данными Переименование столбцов Режим SQL: Режим таблицы: 30 БД_5 -SQL_запросы_2011 Операторы манипулирования данными Переименование столбцов Режим SQL: Режим таблицы: 30 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ПРЕДИКАТ LIKE Синтаксис LIKE= <Выражение для вычисления значения строки> [NOT] LIKE Операторы манипулирования данными ПРЕДИКАТ LIKE Синтаксис LIKE= <Выражение для вычисления значения строки> [NOT] LIKE <Выражение для вычисления значения строки> 31 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ПРЕДИКАТ LIKE Режим SQL: Режим таблицы: 32 БД_5 -SQL_запросы_2011 Операторы манипулирования данными ПРЕДИКАТ LIKE Режим SQL: Режим таблицы: 32 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ПРЕДИКАТ IS [NOT] NULL Позволяет проверить отсутствие (наличие) значения в полях Операторы манипулирования данными ПРЕДИКАТ IS [NOT] NULL Позволяет проверить отсутствие (наличие) значения в полях таблицы. Использование в этих случаях обычных предикатов сравнения может привести к неверным результатам, т. к. сравнение со значением NULL дает результат UNKNOWN (неизвестно). 33 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ПРЕДИКАТ IS [NOT] NULL Режим SQL: Режим таблицы: БД_5 -SQL_запросы_2011 34 Операторы манипулирования данными ПРЕДИКАТ IS [NOT] NULL Режим SQL: Режим таблицы: БД_5 -SQL_запросы_2011 34

ИСПОЛЬЗОВАНИЕ В ЗАПРОСЕ НЕСКОЛЬКИХ ИСТОЧНИКОВ ЗАПИСЕЙ В предложении FROM допускается указание нескольких таблиц. Простое ИСПОЛЬЗОВАНИЕ В ЗАПРОСЕ НЕСКОЛЬКИХ ИСТОЧНИКОВ ЗАПИСЕЙ В предложении FROM допускается указание нескольких таблиц. Простое перечисление таблиц практически не используется, поскольку в результирующем наборе каждая запись из одной таблицы будет сочетаться с каждой записью в другой. Пример: SELECT * FROM students, teacher; 35 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ЯВНЫЕ ОПЕРАЦИИ СОЕДИНЕНИЯ Синтаксис соединения по предикату имеет вид: FROM <таблица Операторы манипулирования данными ЯВНЫЕ ОПЕРАЦИИ СОЕДИНЕНИЯ Синтаксис соединения по предикату имеет вид: FROM <таблица 1> [INNER] JOIN <таблица 2> [ON <предикат>] 36 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ЯВНЫЕ ОПЕРАЦИИ СОЕДИНЕНИЯ Режим SQL: Режим таблицы: 37 БД_5 -SQL_запросы_2011 Операторы манипулирования данными ЯВНЫЕ ОПЕРАЦИИ СОЕДИНЕНИЯ Режим SQL: Режим таблицы: 37 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ВЫЧИСЛЯЕМЫЕ ПОЛЯ Вычисляемых полей на самом деле в таблице базы данных Операторы манипулирования данными ВЫЧИСЛЯЕМЫЕ ПОЛЯ Вычисляемых полей на самом деле в таблице базы данных нет. Они создаются SQL-оператором SELECT. Это дает возможность выполнять любые математические действия над данными. 38 БД_5 -SQL_запросы_2011

Операторы манипулирования данными ВЫЧИСЛЯЕМЫЕ ПОЛЯ Режим SQL: Режим таблицы: 39 БД_5 -SQL_запросы_2011 Операторы манипулирования данными ВЫЧИСЛЯЕМЫЕ ПОЛЯ Режим SQL: Режим таблицы: 39 БД_5 -SQL_запросы_2011

ТИПЫ ДАННЫХ SQL - СТРОКОВЫЕ 40 БД_5 -SQL_запросы_2011 ТИПЫ ДАННЫХ SQL - СТРОКОВЫЕ 40 БД_5 -SQL_запросы_2011

ТИПЫ ДАННЫХ SQL - С ПЛАВАЮЩЕЙ ТОЧКОЙ ДРОБНЫЕ ЧИСЛА) И ЦЕЛЫЕ ЧИСЛА 41 БД_5 ТИПЫ ДАННЫХ SQL - С ПЛАВАЮЩЕЙ ТОЧКОЙ ДРОБНЫЕ ЧИСЛА) И ЦЕЛЫЕ ЧИСЛА 41 БД_5 -SQL_запросы_2011

ТИПЫ ДАННЫХ SQL - ДАТА И ВРЕМЯ 42 БД_5 -SQL_запросы_2011 ТИПЫ ДАННЫХ SQL - ДАТА И ВРЕМЯ 42 БД_5 -SQL_запросы_2011