Студопедия

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника



Язык SQL

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

Его появление и развитие как средства описания доступа к БД связано с созданием теории реляционных БД. Прообраз языка воз­ник в 1970 г. в лаборатории Санта-Тереза фирмы IBM в рамках научно-исследовательского проекта System/R. Сегодня - это фактичес­кий стандарт интерфейса с современными СУБД. Популярность его настолько велика, что разработчики нереляционных СУБД (напри­мер, ADABAS), снабжают свои системы SQL-интерфейсом.

Язык SQL имеет официальный стандарт - ANSI/ISO. Большин­ство разработчиков придерживаются этого стандарта, однако часто расширяют его для реализации новых возможностей обработки дан­ных.

SQL не является языком программирования в традиционном представлении. На нем пишутся не программы, а запросы к базе данных. Поэтому это язык декларативный. Это означает, что с его помощью можно сформулировать, что необходимо получить, однако нельзя указать, как это следует сделать. В частности, в отличие от процедурных языков программирования (Си, Паскаль), в языке SQL отсутствуют такие операторы, как if/then/else.

Запрос в языке SQL состоит из одного или нескольких операто­ров, следующих один за другим и разделенных точкой с запятой. Наиболее важные выделены в стандарте ANSI/ISO SQL.

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

Повторяем, что SQL — это язык запросов, поэтому на нем невоз­можно написать достаточно сложные прикладные программы, кото­рые работают с базой данных. Для этой цели в современных СУБД используют язык четвертого поколения (FGL — Forth Generation Language), обладающий основными возможностями процедурных языков третьего поколения (Си, Паскаль), возможностью встроить текст программы оператора SQL, и средствами управления интер­фейсом пользователя (формами, меню, вводом пользователя и т.д.). Сегодня - FGL - это один из фактических стандартов разработки приложений, работающих с БД.



Первый стандарт этого языка появился в 1989 г. — SQL-89 — и поддерживался практически всеми коммерческими реляционными СУБД. Он имел весьма общий характер и допускал широкое толко­вание. Достоинствами SQL-89 можно считать стандартизацию син­таксиса и семантики операторов выборки и манипулирования дан­ными, а также фиксацию средств ограничения целостности базы данных. Однако в нем отсутствовали такие важные разделы, как ма­нипулирование схемой БД и динамический SQL.

Неполнота стандарта SQL-89 привела к появлению в 1992 г. сле­дующей версии языка SQL. SQL-92 охватывает практически все не­обходимые проблемы: манипулирование схемой базы данных, управ­ление транзакциями и сессиями, динамический SQL. В стандарте существуют три уровня: базовый, промежуточный и полный. Только в. последнее' время СУБД ведущих производителей обеспечивается совместимость с полным вариантом языка.

Появление новых требований пользователей к СУБД и обраба­тываемым данным привели к тому, что в настоящее время ведется работа по разработке SQL 3. Эта версия языка, видимо, будет иметь в своем составе механизм триггеров, определение произвольного типа данных, серьезные объекты расширения. Пока же крупнейшие производители СУБД затягивают разработку этого стандарта, совер­шенствуя и расширяя собственные версии языка SQL.



 


Дата добавления: 2015-04-04; просмотров: 30; Нарушение авторских прав


<== предыдущая лекция | следующая лекция ==>
Базами данных | Управление доступом.
lektsii.com - Лекции.Ком - 2014-2017 год. (0.008 сек.) Главная страница Случайная страница Контакты