Главная страница

В. И. Швецов Базы данных


Скачать 8.45 Mb.
НазваниеВ. И. Швецов Базы данных
АнкорV_I_Shvetsov_Bazy_dannykh.doc
Дата20.12.2017
Размер8.45 Mb.
Формат файлаdoc
Имя файлаV_I_Shvetsov_Bazy_dannykh.doc
ТипУчебное пособие
#12252
страница17 из 24
1   ...   13   14   15   16   17   18   19   20   ...   24

11.3.1. История возникновения и стандарты языка SQL


История возникновения языка SQL восходит к 1970 году [1], когда доктор Е.Ф. Кодд предложил реляционную модель в качестве новой модели базы данных. Для доказательства жизнеспособности новой модели данных внутри компании IBM был создан мощный исследовательский проект, получивший название System/R. Проект включал разработку собственно реляционной СУБД и специального языка запросов к базе данных. Так в начале 70-х годов появился первый исследовательский прототип реляционной СУБД. Для этого прототипа разрабатывались и опробовались разные языки запросов, один из которых получил название SEQUEL (Structured English Query Language). С момента создания и до наших дней этот язык претерпел массу изменений, но идеология осталась неизменной

Период с 1979 года (окончание проекта System/R) до настоящего времени характеризуется развитием и совершенствованием языка SQL и его постоянно увеличивающейся ролью в индустрии, связанной с созданием и эксплуатацией баз данных. Совершенно очевидно, что язык никогда не получил бы мирового признания, если бы на него не было никаких стандартов. Стандартизация – важная часть технологических процессов конца XX века. Именно наличие разработанных и официально признанных стандартов позволило утвердиться многим современным технологиям (не только в индустрии разработки программного обеспечения, но и в многих других сферах человеческой деятельности). Как обстоит дело со стандартами языка SQL и их поддержкой в распространенных СУБД?

Когда ведут речь о стандартах в области, связанной с разработкой программного обеспечения, обычно подразумевают две организации:

  • ANSI (American National Standards Institute) – Американский национальный институт стандартов;

  • ISO (International Standards Organization) – Международную организацию по стандартизации.

Работа над официальным стандартом языка SQL началась в 1982 году [8] в рамках комитета ANSI. В 1986 году (обратите внимание, сколько времени ушло на разработку стандарта и согласование деталей!) был утвержден первый вариант стандарта ANSI, а в 1987 году этот стандарт был утвержден и ISO. В 1989 году стандарт претерпел незначительные изменения, но именно этот вариант получил название SQL-1 или SQL-89. В чем особенность SQL-89? За время разработки стандарта (1982–1989 гг.) были созданы, представлены на рынке и активно использовались несколько различных СУБД, в которых в том или ином виде был реализован некоторый диалект языка SQL. С учетом того, что разработкой стандартов занимались те же люди, кто внедрял SQL в СУБД, стандарт SQL-89 представлял собой плод множества компромиссов, приведших к наличию в нем большого количества «белых пятен», т.е. мест, которые не были описаны, а отданы на усмотрение разработчиков диалекта. В результате чуть ли не все имеющиеся диалекты стали совместимыми со стандартом, но особой пользы это не принесло.

Следующая реализация стандарта была призвана решить эту проблему. В результате длительных обсуждений и согласований в 1992 году был принят новый стандарт ANSI SQL-2 или SQL-92. SQL-92, который заполнил многие «белые пятна», впервые добавив в стандарт возможности, еще не реализованные в существующих коммерческих СУБД.

Работа над стандартизацией продолжается и далее. Появились стандарты SQL-1999, SQL-2003. Тем не менее, все эти стандарты не решили всех проблем, связанных с наличием нескольких диалектов языка. Как правило, разработчики как игнорировали, так и игнорируют некоторые положения стандарта, с одной стороны, отказываясь реализовывать некоторые его части и, с другой стороны, реализуя то, что отсутствует в стандарте. Несмотря на имеющиеся отличия, все коммерческие СУБД поддерживают некоторое ядро языка, описанное в стандарте, одинаково. Отличий не очень много, они не носят слишком принципиального характера. Хотя каждая СУБД по-прежнему поддерживает свой диалект языка.

В систему управления базами данных Microsoft SQL Server входит язык Transact-SQL, разработанный на основе одного из стандартов SQL. .

11.3.2. Достоинства языка SQL


Для ознакомления с достоинствами языка обратимся к соответствующей литературе [1]. Вот некоторые из них:

  • межплатформенная переносимость;

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

  • одобрение и поддержка компанией IBM (СУБД DB2);

  • поддержка со стороны компании Microsoft (СУБД SQL Server, протокол ODBC и технология ADO);

  • реляционная основа;

  • высокоуровневая структура;

  • возможность выполнения специальных интерактивных запросов;

  • обеспечение программного доступа к базам данных;

  • возможность различного представления данных;

  • полноценность как языка, предназначенного для работы с базами данных;

  • возможность динамического определения данных;

  • поддержка архитектуры клиент/сервер;

  • поддержка корпоративных приложений;

  • расширяемость и поддержка объектно-ориентированных технологий;

  • возможность доступа к данным в Интернете;

  • интеграция с языком Java (протокол JDBC);

  • промышленная инфраструктура.



1   ...   13   14   15   16   17   18   19   20   ...   24


написать администратору сайта