Назначения, стандарты и достоинства языка SQL
SQL – непроцедурный яз, который сочетает возможность яз: - Определение данных; - Манипулирование данными; - Запросов.
SQL представляет собой некоторые комбинации реляционных исчислений кортежей и расширение реляционной алгебры.
SQL используется для реализации всех функций, которые в СУБД: - Организация в данных; - Чтение данных; - Обработка; - Управление доступом; - Совместное использование данными; - Поддержание целостности данных .
SQL обеспечивает доступ данных в 2-х режимах: - Интерактивные; - Программные
Цель стандартизации – переносимость приложений между различными СУБД.
В стандарте ANSI/ISO определены наиболее простые условия цельности данных (например: обязательность данных, уникальность первичных ключей). Более сложные условия (деловое правило) не определены в стандарте и реализуются по-разному.
SQL 1 (1980) содержит только описание яз. определения структуры БД в реализации СУБД различными подходами:
· Созданная в ходе процесса установки ПО (Oracle) таблица пользователя всегда помещается в единую общесистемную БД
· С помощью специальных программы – утилиты (Ingress)
· оператором Create data base (SQL Server)
SQL 2 (1992)
· Существенно более полная и охватывает практически все необходимые для реализации аспекты:
· Манипулирование схемой БД
· Управление транзакциями и сессиями
· Подключение к БД
· Динамическое SQL
· Определеныь общие требования к системному каталогу
· Не требует, чтобы СУБД в точности поддерживала требуемый набор системных наборов.
SQL 3 (1993)
· Содержит механизм триггеров
· Поддержка типов данных, определяемых пользователем
· Поддержка курсоров
· Расширенные средства подключение и транзакции
· Поддержка обновляемых результирующих наборов
SQL 2003
· Расширение типов данных (MXL - документ)
· Табличные функции
· Расширенные возможности Create table
· Новый оператор Merge
· Вложенные таблицы
Достоинства SQL
· Легко для понимания
· Наличие стандартов
· Универсальное программное средство управление данными
· Независимость от СУБД
· Переносимость с одной вычислительной системы на другую
· Реализационная основа – единственный яз для реляционной БД
· Обеспечения интерактивного и программного доступа к данным
· Возможность различного представления данных в БД для различных пользователей
· Обеспечение администрирования и защиты БД
· Работа с распределенной БД
· Поддержка возможности динамического определения данных
· Полноценный яз для работы с БД
Структура команды SQL
Каждая команда SQL начинается с действия – ключевого слова или группы слов, описывающих выполняемую операцию. Например, INSERT (добавить), DELETE (удалить), COMMIT (завершить), CREATE TABLE (создать таблицу).
Примечание. В языках программирования ключевое слово – название, зарезервированное для определенных целей, например, названий команд, устройств и т.п.
После действия может следовать одно или несколько предложений. Предложение описывает данные, с которыми работает команда, или содержит уточняющую информацию о действии, выполняемом командой. Каждое предложение начинается с ключевого слова, такого как, например, WHERE (где), FROM (откуда), INTO (куда), HAVING (имеющий). Многие предложения содержат имена таблиц и полей БД; некоторые – константы и выражения.
Имена таблиц, полей и пользователей должны содержать от 1 до 18 символов, начинаться с буквы и не содержать пробелов или специальных символов пунктуации. В качестве имен нельзя использовать ключевые слова SQL.
Пример команды SQL: