Язык структурных запросов SQL. История развития языка SQL
SQL
SQL
SQL
SQL
SQL
SQL
SQL
Описание
Операторы
Операторы
Операторы
Операторы
Select
Select
Структура оператора
Insert
Примеры использования
Update
Update
Delete
Внедрение SQL-кода
334.00K
Category: databasedatabase

Язык структурных запросов SQL. История развития языка SQL

1. Язык структурных запросов SQL. История развития языка SQL

Выполнил: Туйбаев Жалын
Группа: ИТиУ-1-20

2. SQL

«Язык структурированных запросов» —
универсальный компьютерный язык,
применяемый для создания, модификации
и управления данными в реляционных базах
данных.
В начале 1970-х годов в одной из
исследовательских лабораторий компании
IBM была разработана экспериментальная
реляционная СУБД IBM System R, для
которой затем был создан специальный
язык SEQUEL, позволявший относительно
просто управлять данными в этой СУБД.
Первый стандарт SQL языка был принят в
1986 году.

3. SQL

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

4. SQL

Изначально, SQL был основным способом
работы пользователя с базой данных и
позволял выполнять следующий набор
операций:
создание в базе данных новой таблицы;
добавление в таблицу новых записей;
изменение записей;
удаление записей;
выборка записей из одной или нескольких
таблиц (в соответствии с заданным
условием);

5. SQL

Каждое предложение SQL — это запрос или обращение к
базе данных, которое приводит к изменению в базе
данных.
В соответствии с тем, какие изменения происходят в базе
данных, различают следующие типы запросов:
запросы на создание или изменение в базе данных новых
или существующих объектов (при этом в запросе
описывается тип и структура создаваемого или
изменяемого объекта);
запросы на получение данных;
запросы на добавление новых данных (записей)
запросы на удаление данных;
обращения к СУБД.

6. SQL

Основным объектом хранения реляционной
базы данных является таблица, поэтому все
SQL-запросы — это операции над таблицами.
В соответствии с этим, запросы делятся на
запросы, оперирующие самими таблицами
(создание и изменение таблиц);
запросы, оперирующие с отдельными записями
(или строками таблиц) или наборами записей.
- вставка новой строки;
- изменение значений полей строки или набора
строк;
- удаление строки или набора строк.

7. SQL

Каждая таблица описывается в виде
перечисления своих полей (столбцов
таблицы) с указанием:
типа хранимых в каждом поле
значений;
связей между таблицами (задание
первичных и вторичных ключей);
информации, необходимой для
построения индексов.

8. SQL

Самый главный вид запроса — это запрос,
возвращающий (пользователю) некоторый набор
строк, с которым можно осуществить одну из трёх
операций:
просмотреть полученный набор;
изменить все записи набора;
удалить все записи набора.

9. Описание

Язык SQL представляет собой совокупность:
операторов;
инструкций;
и вычисляемых функций.
Согласно общепринятому стилю
программирования, операторы (и другие
зарезервированные слова) в SQL всегда
следует писать прописными буквами.

10. Операторы

Делятся на:
операторы определения данных (Data Definition
Language, DDL)
- CREATE создает объект БД (саму базу, таблицу,
представление, пользователя и т. д.)
- ALTER изменяет объект
- DROP удаляет объект

11. Операторы

операторы манипуляции данными (Data Manipulation
Language, DML)
- SELECT считывает данные, удовлетворяющие
заданным условиям
- INSERT добавляет новые данные
- UPDATE изменяет существующие данные
- DELETE удаляет данные

12. Операторы

операторы определения доступа к данным (Data
Control Language, DCL)
- GRANT предоставляет пользователю (группе)
разрешения на определенные операции с объектом
- REVOKE отзывает ранее выданные разрешения
- DENY задает запрет, имеющий приоритет над
разрешением

13. Операторы

операторы управления транзакциями (Transaction
Control Language, TCL)
COMMIT применяет транзакцию.
ROLLBACK откатывает все изменения, сделанные в
контексте текущей транзакции.
SAVEPOINT делит транзакцию на более мелкие
участки.

14. Select

SELECT — оператор DML (манипуляции данных) языка
SQL, возвращающий набор данных (выборку) из базы
данных, удовлетворяющих заданному условию.
В большинстве случаев, выборка осуществляется из
одной или нескольких таблиц.
При формировании запроса SELECT пользователь
описывает ожидаемый набор данных: его вид (набор
столбцов) и его содержимое (критерий попадания
записи в набор, группировка значений, порядок
вывода записей и т.п.)

15. Select

Запрос выполняется следующим
образом:
сначала извлекаются все записи из
таблицы, а, затем, для каждой
записи набора проверяется её
соответствие заданному критерию.
Если осуществляется слияние из
нескольких таблиц, то сначала
составляется произведение таблиц,
а уже затем из полученного набора
отбираются требуемые записи
(критерии)

16. Структура оператора

SELECT список полей FROM список таблиц WHERE условия…
Основные ключевые слова, относящиеся к запросу SELECT:
WHERE — используется для определения, какие строки должны
быть выбраны или включены в GROUP BY.
GROUP BY — используется для объединения строк с общими
значениями в элементы меньшего набора строк.
HAVING — используется для определения, какие строки после
GROUP BY должны быть выбраны.
ORDER BY — используется для определения, какие столбцы
используются для сортировки результирующего набора данных

17.

18. Insert

INSERT — оператор языка SQL, который позволяет
добавить строки в таблицу, заполняя их значениями.
Значения можно вставлять перечислением с
помощью слова values и перечислив их в круглых
скобках через запятую или оператором select.

19. Примеры использования

20. Update

UPDATE — оператор языка SQL, позволяющий
обновить значения в заданных столбцах таблицы.

21. Update

top(x) — команда выполнится только х
раз
<объект> — объект, над которым
выполняется действие (таблица или
представление(views))
<присваивание> — присваивание,
которое будет выполняться при каждом
выполнении условия <условие>, или для
каждой записи, если отсутствует раздел
where
<условие> — условие выполнения
команды
<хинт> — инструкция программе как
исполнить запрос

22. Delete

DELETE — в языках, подобных SQL,
DML-операция удаления записей из
таблицы. Критерий отбора записей
для удаления определяется
выражением where.
В случае, если критерий отбора не
определён, выполняется удаление
всех записей.
DELETE <Имя записи для удаления> > FROM <Имя Таблицы1> JOIN <Имя
Таблицы2> ON <условие
объединения>;

23. Внедрение SQL-кода

Внедрение SQL-кода (англ. SQL injection) — один из
распространённых способов взлома сайтов и
программ, работающих с базами данных, основанный
на внедрении в запрос произвольного SQL-кода.
Внедрение SQL, в зависимости от типа используемой
СУБД и условий внедрения, может дать возможность
атакующему выполнить произвольный запрос к базе
данных (например, прочитать содержимое любых
таблиц, удалить, изменить или добавить данные),
получить возможность чтения и/или записи локальных
файлов и выполнения произвольных команд на
атакуемом сервере.
English     Русский Rules