Резюме: в этой статье мы познакомим вас с языком SQL, обсудим стандартный SQL и некоторые популярные диалекты SQL.
Введение в язык SQL
SQL — это язык программирования. Он предназначен для создания, модификации и управления данными, хранящимися в реляционной системе управления базами данных (РСУБД).
SQL расшифровывается как язык структурированных запросов. Он произносится как /ˈэс кью эль/ или /ˈсивкел/.
SQL состоит из
- языка определения данных,
- языка манипулирования данными
- и языка управления данными.
Язык определения данных (data definition language — DDL) занимается созданием и изменением схемы. Например, с помощью него оператор CREATE TABLE позволяет создать новую таблицу в базе данных, с которой можно работать далее. А оператор ALTER TABLE изменяет структуру существующей таблицы.
Язык манипулирования данными (data manipulation language — DML) предоставляет конструкции
- для запроса данных, такие как оператор SELECT с дополнительными условиями FROM, WHERE. Выполнив команду SELECT можно добиться простого результата — получить нужные строки из таблицы.
- и для обновления данных, такие как операторы INSERT, UPDATE и DELETE.
Язык управления данными (data control language — DCL) состоит из утверждений, которые касаются авторизации и безопасности пользователей, таких как утверждения GRANT и REVOKE.
Стандарт SQL
SQL был одним из первых коммерческих языков баз данных с 1970 года. С тех пор различные производители баз данных внедрили его в свои продукты с некоторыми вариациями. Чтобы обеспечить большее соответствие между поставщиками, Американский институт стандартов (ANSI) опубликовал первый стандарт SQL в 1986 году.
Затем ANSI обновил стандарт SQL в 1992 году, известный как SQL92 и SQL2. И еще раз в 1999 году как SQL99 и SQL3. Каждый раз ANSI добавлял новые возможности и команды в язык SQL.
В настоящее время стандарт SQL поддерживается как ANSI, так и Международной организацией по стандартизации в качестве стандарта ISO/IEC 9075. Последний выпущенный стандарт — SQL:2011.
Стандарт SQL формализует синтаксические структуры и поведение SQL во всех продуктах баз данных. Он становится еще более важным для баз данных с открытым исходным кодом, таких как MySQL и PostgreSQL, где РСУБД разрабатываются в основном сообществами, а не крупными корпорациями.
Диалекты SQL
Сообщество постоянно запрашивает новые функции и возможности, которых еще нет в стандарте SQL. Поэтому даже при наличии стандарта SQL в различных продуктах баз данных в результате использования существует множество диалектов SQL.
Поскольку ANSI и ISO еще не разработали эти важные функции, поставщики РСУБД (или сообщества) могут свободно изобретать свои собственные новые синтаксические структуры.
Ниже перечислены наиболее популярные диалекты SQL:
- PL/SQL расшифровывается как процедурный язык/SQL. Он разработан компанией Oracle для базы данных Oracle Database.
- Transact-SQL или T-SQL разработан компанией Microsoft для Microsoft SQL Server.
- PL/pgSQL означает процедурный язык/PostgreSQL, который состоит из диалекта SQL и расширений, реализованных в PostgreSQL.
- MySQL имеет свой собственный процедурный язык, начиная с версии 5. Обратите внимание, что MySQL была приобретена компанией Oracle.
В каждой статье раздела SQL мы будем объяснять синтаксические структуры и поведение SQL, которые действительны для всех баз данных. Мы также обсудим исключения, если они существуют в конкретной базе данных.
Следующая статья: Синтаксис SQL.