Руководство по SQL. Введение.

Данное руководство посвящено изучению структурированного языка запросов (Structured Query Language – SQL) и дополнен большим количеством примеров, которые наглядно демонстрируют возможности SQL.

SQL является стандартом ANSI, но существует большое количество версий данного языка запросов.


Что такое SQL?

SQL предназначен для сохранения, манипуляции и получения данных, которые хранятся в реляционной базе данных (далее – БД). Он является стандартным языком для Систем Управления Реляционными Базами Данных – СУБД (RDBMS), таких как MySQL, Oracle, Postgres и т.д.

Эти системы используют различные диалекты SQL:

Oracle – PL/SQL

MS SQL – T-SQL


Преимущества SQL

Среди преимуществ SQL мы можем выделить следующие:

  • Позволяет пользователям получать доступ к данным в RDBMS.
  • Позволяет пользователям описывать данные.
  • Позволяет пользователям определять данные в БД и манипулировать ими.
  • Позволяет встраивать другие языки, используя модули SQL, библиотеки и пре-компиляторы.
  • Позволяет пользователям создавать и удалять БД и таблицы.
  • Позволяет пользователю создавать встроенные виды, процедуры и функции в БД.
  • Позволяет ограничивать доступ к таблицам, процедурам и видам.

Принцип работы SQL

Когда мы выполняем команду SQL для любой RDBMS, система определяет наилучший способ для обработки нашего запроса и модуль управление (“двигатель”) SQL вычисляет, как интерпретировать задачу.

В данный процесс включены такие компоненты:

  • Query
  • Dispatcher
  • Optimization Engines
  • Classic Query Engine
  • SQL Query Engine и т.д.

Classic Query Engine обрабатывает все не-SQL запросы, а SQL Query Engine не обрабатывает логические файлы.

Ниже представлена простая диаграмма, демонстрирующая архитектуру SQL:

sql-architecture


SQL Команды

Стандартные SQL команды для взаимодействия с реляционными БД:

  • CREATE
  • SELECT
  • INSERT
  • UPDATE
  • DELETE
  • DROP

Данные команды разбиты на две большие категории:

DDL – Data Definition Language

Команда Описание
CREATE Создаёт новую таблицу, вид таблицы или другой объект в БД.
ALTER Изменяет существующий объект БД (например, таблицу).
DROP Удаляет указанную таблицу, вид таблицы или другой объект БД.

DML – Data Manipulation Language

Команда Описание
SELECT Получает определённые данные из одной или нескольких таблиц.
INSERT Создаёт запись
UPDATE Изменяет записи
DELETE Удаляет записи

DCL – Data Control Language

Команда Описание
GRANT Даёт все привилегии пользователю
REVOKE Отменяет привилегии отданные пользователю

На это мы заканчиваем введение в язык структурированных запросов (SQL).

В следующей статье мы обсудим базовые концепции RDBMS.