ВВЕДЕНИЕ В SQL
SQL (Structured Query Language, структурный язык запросов, произносится "sequel", ['si:kwel]) представляет собой множество команд, которые должны использоваться всеми программами и пользователями для доступа к данным в базе данных ORACLE. Прикладные программы и инструменты ORACLE зачастую позволяют пользователям обращаться к базе данных без непосредственного использования SQL, но на самом деле эти приложения сами используют SQL, когда выполняют запрос пользователя. Эта глава предоставляет базовую информацию о языке SQL, - языке, использующемся большинством реляционных систем баз данных. Темы этой главы включают обсуждение следующих вопросов:
* история SQL
* стандарты SQL
* достоинства SQL
* встроенный SQL
* лексические соглашения SQL в ORACLE
* поддержка SQL в инструментах ORACLE
----------------
История SQL
Реляционная модель базы данных была первоначально разработана д-ром Коддом (Dr. E.F. Codd) в начале 1970-х годов. Язык SQL был первоначально создан фирмой IBM в прототипной реляционной СУБД, System R, в середине 1970-х. Описание первой версии языка SQL (SEQUEL2) было опубликовано в 1976 г. в ноябрьском номере журнала IBM Journal of R&D. В 1979 г. корпорация Oracle выпустила первую коммерчески доступную реализацию SQL. Язык SQL был также реализован в таких системах управления базами данных IBM, как DB2 и SQL/DS. В наши дни SQL широко реализован, и принят как промышленный стандарт языка баз данных.
----------------
Стандарты SQL
Американский Национальный институт стандартов (ANSI) принял SQL как стандартный язык для реляционных систем управления базами данных (СУБД), как определено в документе ANSI X3.135-1989 "Database Language SQL with Intergity Enhancement", или ANSI SQL89. Этот стандарт перекрывает более раннюю версию ANSI X3.135-1986, и включает средство обеспечения целостности (Integrity Enhancement Feature), которое было ранее описано в Добавлении I к стандарту ANSI SQL. Этот стандарт, помимо ANSI, был также одобрен следующими организациями:
* Международной организацией стандартов (ISO) в документе ISO 9075-1989 "Database Language SQL with Integrity Enhancement"
* Федеральным правительством Соединенных Штатов в документе
Federal Information Standard Publication (FIPS PUB) 127
ANSI также принял стандарт для встроенного SQL, определенный в документе ANSI X3.168-1989 "Database Language Embedded SQL".
Все основные реляционные СУБД поддерживают ту или иную форму SQL, и большинство из них склоняются к совместимости со стандартом ANSI SQL89. Описание согласованности ORACLE с этими стандартами, а также расширений ORACLE для стандартного SQL, приведено в приложении C к этому руководству, "ORACLE и стандартный SQL".
----------------
Достоинства SQL
В этой секции описываются многие из причин, по которым SQL получил всемирное одобрение как среди разработчиков реляционных СУБД, так и среди конечных пользователей. Его достоинства проявляются для всего спектра пользователей, включая прикладных программистов, администраторов баз данных, менеджеров и конечных пользователей.
Непроцедурный язык
~~~~~~~~~~~~~~~~~~
SQL - непроцедурный язык, потому что он:
* обрабатывает записи целыми множествами, а не по одной
* обеспечивает автоматические пути доступа к данным
SQL позволяет вам работать со структурами данных более высокого уровня. Вместо того, чтобы манипулировать отдельными строками, вы манипулируете множествами строк. Команды SQL принимают множества строк как ввод и возвращают множества строк как вывод. Благодаря умению SQL манипулировать множествами результаты одного предложения SQL могут использоваться как ввод для другого.
SQL не заставляет вас специфицировать метод доступа к данным. Это позволяет вам сконцентрироваться на получении желаемых результатов. Все предложения SQL используют оптимизатор, - часть ORACLE, определяющую наиболее быстрые пути доступа к запрошенным данным. Оптимизатор знает, какие существуют индексы, и использует их, когда это выгодно. При обращении к таблице вы не обязаны знать о ее индексах.
Язык для всех пользователей
~~~~~~~~~~~~~~~~~~~~~~~~~~~
SQL используется для всех типов операций в базе данных любыми типами пользователей, в том числе:
* системными администраторами
* администраторами баз данных
* администраторами защиты
* прикладными программистами
* лицами, принимающими системные решения
* всевозможными типами конечных пользователей
SQL предоставляет легко усваиваемые команды, которые согласуются и одинаково применяются всеми типами пользователей. Основные команды SQL можно запомнить за несколько часов, и даже наиболее развитыми и сложными командами можно овладеть за несколько дней.
Унифицированный язык
~~~~~~~~~~~~~~~~~~~~
SQL предоставляет команды для разнообразных задач, включая:
* опрос данных
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.