Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

История создания SQL

Язык запросов SQL был предложен корпорацией IBM в 70-х годах. Первоначально были созданы два основных продукта на основе SQL - DB2 и SQL/DS; далее на базе операционной системы 0S/2 предложена система Database Manager [1,2]. С тех пор язык SQL был принят большинством фирм, поставляющих на рынок базы данных как для персональных, так и для 'больших' (MAINFRAME) ЭВМ и стал фактическим стандартом получения информации из реляционных баз данных.

Со времени создания SQL четко обособились фактически две ветви в разработке систем для управления базами данных - на основе непроцедурного языка SQL и процедурных языков (язык dBase, Paradox, Clarion и многие другие). Фактически каждый из процедурных языков БД представляет некоторый 'надъязык' (по отношению к уровню Fortran, Pascal, С), ориентированный на обработку записей БД.

Совсем другой подход реализован в SQL - создан непроцедурный язык запросов к БД, в полной мере реализующий принцип DWIM - 'Делай то, что я имею в виду!'. При пользовании SQL пользователь на формальном языке запрашивает некоторую операцию (например, в ы борку из одной или более баз), а интерпретирующая SQL-система выполняет задание.

Заметим, что при пользовании процедурным языком пришлось бы (с большей или меньшей степенью детализации) описать все (возможно, очень многие) необходимые действия. Таким образом, одна фраза на SQL может быть равноценна целым страницам инструкций на языках уровня С, Pascal, Fortran и др. Однако подобные возможности языка SQL требуют значительных аппаратных ресурсов ЭВМ (соответствующей мощности процессора и многомегабайтной оперативной памяти для интерпретации и выполнения SQL-предложений); таким образом системы на основе SQL оправданы при реализации серьезных приложений (банковские системы, региональные и глобальные БД etc)

В настоящее время поддержка SQL-команд встроена в dBase, Borland Delphi / C++Builder, SQL Windows, PowerBuilder и другие системы. SQL является обычным для обеспечения работы с БД в сети InterNet - например, расширение MySQL (www.mysql.com) для языков Perl (www.perl.com, www.cpan.org) и PHP (www.php.net, www.phpclub.net), входящий в пакет Java.sql интерфейс JDBC (Java DataBase Connectivity) фирмы JavaSoft для языка Java.

Однако SQL (как и многие другие непроцедурные языки) не содержит ряда привычных программистам возможностей - таких, как использование условных выражений и организации циклов. По этим соображениям команды SQL часто встраиваются в процедурные языки программирования, например, в С/C++ и др.

Язык SQL ориентирован на операции с данными, представленными в виде логически связанной совокупности таблиц в отличие от процедурных БД-языков, ориентированных на операции с данными, представленными в виде записей.

SQL-язык естественно вошел в современную идеологию систем распределенной обработки данных типа 'клиент-сервер', где SQL-предписания генерируются приложением-клиентом и выполняются приложением-сервером (обычно использующим значительные мощности машины-сервера). При этом удается значительно уменьшить сетевой трафик (поток информации): от клиента к серверу идет небольшой поток данных в виде SQL-команд, обратный поток также невелик и состоит из логически обработанной согласно SQL-предписаниям относительно небольшой части общей БД; причем реализация хран и мых процедур позволяет вообще вынести выполнение наиболее часто используемых SQL-процедур с клиента на сервер и тем самым еще более разгрузить клиент-приложение и клиент-машину.

Язык для взаимодействия с БД SQL был разработан в рамках проекта экспериментальной реляционной СУБД System R. Исходное название языка SEQUEL (Structered English Query Language) только частично отражает суть этого языка. Конечно, язык был ориентирован главным образом на удобную и понятную пользователям формулировку запросов к реляционной БД, но на самом деле уже являлся полным языком БД, содержащим помимо операторов формулирования запросов и манипулирования БД средства определения и манипулирования схемой БД; определения ограничений целостности и триггеров; представлений БД; возможности определения структур физического уровня, поддерживающих эффективное выполнение запросов; авторизации доступа к отношениям и их полям; точек сохранения транзакции и откатов. Таким образом, SQL стал достаточно мощным языком для взаимодействия с СУБД. На сегодняшний день SQL является единственным стандартным языком запросов. Язык SQL обладает следующими достоинствами:

1. независимость от конкретных СУБД. Если при создании БД не использовались нестандартные возможности языка SQL предоставляемые некоторой СУБД, то такую БД можно без изменений перенести на СУБД другого производителя. К сожалению большинство БД используют особенности СУБД, на которой работают, что затрудняет их перенос на другую СУБД без изменений;

2. реляционная основа. Реляционная модель имеет солидный теоретический фундамент. Язык SQL основан на реляционной модели и является единственным языком для реляционных БД;

3. SQL обладает высокоуровневой структурой, напоминающей английский язык.

4. SQL позволяет создавать различные представления данных для различных пользователей;

5. SQL является полноценным языком для работы с БД;

6. стандарты языка SQL. Официальный стандарт языка SQL опубликован ANSI и ISO в 1989 году и значительно расширен в 1992 году.

<== предыдущая лекция | следующая лекция ==>
Методы массажа | Типы данных в SQL
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 1263; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.014 сек.