389 Язык запросов SQL
Язык SQL
Язык SQL (Structure Query Lanuage), структурированный язык запросов, в настоящее время является стандартным языком по работе с реляционными СУБД. Требования к языку были сформулированы Э.Коддом. Впервые был реализован в секредине 70 -х годов в первой экпериментальной реляционной системе SYSTEMR, которая разрабатывалась в исследовательской лаборатории фирмы IBM в Сан-Хосе и первоначально назывался SEQUAL. Язык был предназначен для демонстрации возможностей реляционного подхода.
Язык развивался и фактически стал стандартом в реляционных СУБД. В 1989 году был принят в качестве международного стандарта соответствующей организацие МОС, международной организацией стандартов (ISO), как SQL1.
В 1992 был принят новый стандорт SQL2, более точный и полный. Большинство СУБД удовлетворяет этому стандарту.
Язык обеспечивает доступ к самым разнообразным БД, на различных платформах На основе этого языка разработаны мощьные мультипользовательские СУБД, предназначенные для работы в сетевой среде (клиент-сервер) и называемые SQL-серверами. Разработан открытый интерфейс доступа к БД - ODBC, представляющий собой библиотеку функций, которые позволяют прикладным программам обращаться к любому серверу на языке SQL. Необходимо только наличие драйвера для данной СУБД. практически нет и двух одинаковых реализаций SQL. языки различных производителей отличаются друг от друга. Драйверы преобразуют запросы к синтаксису источника данных и управляют всем взаимодействием сервера и приложения.
В 1999 появился новый стандарт SQL3, который существенно отличался от ранее принятых. Прежде всего, введением новых типов данных и возможностью задания структурированных сложных типов данных, которые были ориентированы на использование в объектно-ориентированных БД. Добавлены также разделы, которые вводят стандарты на события и триггеры.
Зачем нужны стандарты? Они являются ориентиром для разработчиков информационных систем и СУБД. использование стандартов облегчает развитие систем, которое связанос расширяемостью (масштабируемостью) и переходом на другие платформы.
Команды языка SQL
Команды языка предназначены для организации хранения и доступа к данным. SQL нельзя в полной мере отнести к традиционным языкам программирования. SQL не имеет возможностей языка программирования высокого уровня по управлению данными, например, по созданию интерфейса. Команды языка можно использовать двумя способами:
1) в интерактивном режиме;
2) в прикладной программе.
В интерактивном режиме, например в СУБД «FoxPro», мы набираем команды в командном окне и они исполняются. Такие же команды мы можем использовать в прикладной программ. Операторы SQL встраиваются в различные языки программирования.
В отличие от реляционной алгебры, где представлены только операции запросов, SQL является полным языком. Он содержит следующие группы операторов:
1). Операторы языка определения данных - ЯОД (DDL - Data Definition Language):
Create Tabl, Drop Tabl, Alter Tabl - создать, удалить, изменить таблицу;
Create View, Drop View, Alter View - создать, удалить, изменить представление;
Create Index, Drop Index - создать, удалить индекс.
2). Операторы манипулирования данными - ЯМД (Data Manipulation Language - DML)
Deleter - удалить, Insert - вставить, Update - обновить строки в таблице.
3). Язык запросов. Оператор Select.
4). Операторы управления транзакциями:
Commit - завершить, Rollback - откат, Savepoint - сохранить промежуточную точку.
5) Операторы администрирования
Create, Drop, Alter Database - создать, удалить, изменить базу данных;
Alter Password - изменить пароль,
Grant - предоставить права, Revoke - лишить прав.
Реализация в различных системах данных команд имеет отличия.
Наиболее важной и сложной операцией является выполнение запросов к БД.
Do'stlaringiz bilan baham: |