Викия

Наука

SQL

22 032статьи на
этой вики
Добавить новую страницу
Обсуждение0 Поделиться

Обнаружено использование расширения AdBlock.


Викия — это свободный ресурс, который существует и развивается за счёт рекламы. Для блокирующих рекламу пользователей мы предоставляем модифицированную версию сайта.

Викия не будет доступна для последующих модификаций. Если вы желаете продолжать работать со страницей, то, пожалуйста, отключите расширение для блокировки рекламы.

SQL (англ. Structured Query Language — язык структурированных запросов) — универсальный язык, применяемый для создания, модификации и управления данными в реляционных базах данных.

SQL основывается на реляционной алгебре.

Язык SQL делится на три части:

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

История Править

В начале 1970-х годов в компании IBM была разработана экспериментальная СУБД «System R» на основе языка SEQUEL (Structured English Query Language — структурированный английский язык запросов). Позже по юридическим соображениям язык SEQUEL был переименован в SQL. Когда в 1986 году первый стандарт языка SQL был принят ANSI (American National Standards Institute), официальным произношением стало [,es kju:' el] — эс-кью-эл. Несмотря на это, даже англоязычные специалисты по прежнему часто называют SQL сиквел, вместо эс-кью-эл (по-русски также часто говорят «эс-ку-эль»). Целью разработки было создание простого непроцедурного языка, которым мог воспользоваться любой пользователь, даже не имеющий навыков программирования.

Собственно разработкой языка запросов занимались Чэмбэрлин (Chamberlin) и Рэй Бойс (Ray Boyce). Пэт Селинджер (Pat Selinger) занималась разработкой стоимостного оптимизатора (cost-based optimizer), Рэймонд Лори (Raymond Lorie) занимался компилятором запросов.

В 1981 году IBM объявила о своём первом основанном на SQL программном продукте — SQL/DS. Чуть позже к ней присоединились Oracle, Relational Technology и другие производители.

Первый стандарт языка SQL был принят ANSI (Американским национальным институтом стандартизации) в 1986 и ISO (Международной организацией по стандартизации) в 1987 (так называемый SQL level 1) и несколько уточнён в 1989 году (SQL level 2). Дальнейшее развитие языка поставщиками СУБД потребовало принятия в 1992 нового расширенного стандарта (ANSI SQL-92 или просто SQL-2). Следующим стандартом стал SQL-99. В настоящее время действует стандарт, принятый в 2003 году (SQL-3).

Среди достоинств использования (применения) SQL в прикладной сфере можно выделить следующие:

  • Независимость от конкретной СУБД

Несмотря на наличие диалектов и различий в синтаксисе, в большинстве своём тексты SQL запросов, содержащие DDL и DML, могут быть достаточно легко перенесены из одной СУБД в другую и наоборот. Существуют системы, разработчики которых изначально закладывались на применение по меньшей мере нескольких СУБД (например: система электронного документооборота Documentum может работать как с Oracle Database, так и с Microsoft SQL Server и IBM DB2)

  • Наличие стандартов

Наличие стандартов и набора тестов для выявления совместимости и соответствия конкретной реализации SQL общепринятому стандарту только способствует «стабилизации» языка.

  • Полноценность как языка для управления данными

С помощью SQL программист или пользователь может просматривать, изменять и удалять данные, что является основой самого понятия СУБД.

Хотя SQL и задумывался как средство работы конечного пользователя, в конце концов он стал настолько сложным, что превратился в инструмент программиста.

Несмотря на наличие международного стандарта ANSI SQL-92, многие компании, занимающиеся разработкой СУБД (например, Oracle, Microsoft, MySQL AB, Borland), вносят изменения в язык SQL, применяемый в разрабатываемой СУБД, тем самым отступая от стандарта. Таким образом появляются специфичные для каждой конкретной СУБД диалекты языка SQL.

Стандарты Править

Ревизии SQL:

Год Названия Комментарии
1986 SQL-86, SQL-87 Впервые опубликован ANSI. Ратифицирован ISO в 1987.
1989 SQL-89 Небольшие изменения.
1992 SQL-92, SQL-2 Существенные изменения.
1999 SQL:1999, SQL-3 Добавлены регулярные выражения, рекурсивные запросы, триггеры и некоторые обьекто-ориентированные нововведения.
2003 SQL:2003 Объявлены XML-зависимые нововведения.

Безопасность Править

См. также Править

Ссылки Править

Литература Править

Викия-сеть

Случайная вики