Информация о привилегиях

Помимо информации о структуре базы данных, системный каталог хранит информацию, которая необходима СУБД для обеспечения безопасности базы данных.

Появление новых технических и программных решений влечет необходимость изменения алгоритмов поиска и обновления данных, но при этом необходимо обеспечить и возможность использования ранее разработанных программных продуктов. Кроме того, разработка информационных систем не долж­на зависеть от выбора той или иной СУБД для организации данных. Все это подталкивает к необходимости стандартизации, если не самих алгоритмов доступа к данным, что едва ли возможно, а хотя бы спецификаций процедур доступа.

Если мы на каком-либо языке сумеем описать данные, а сам алгоритм будет строить компилятор или интерпретатор соответствующей СУБД, то описание будет одним и тем же для всех СУБД, понимающих этот язык. Именно эту проблему решает язык SQL – язык структурированных запросов. Этот язык принят в качестве стандарта всеми фирмами, разрабатывающими СУБД. Благодаря этому разработчики могут не заботиться о том, в среде какой СУБД будет работать его задача.

Язык SQL − это язык нечисловой обработки данных, предназначен для работы с содержанием данных. Например, если на алгоритмическом языке для обращения к массивам A и B нужно определить адрес массива и воспользоваться значением индекса I для выбора конкретного элемента. Аналогично для выборки из памяти из памяти значения переменной X достаточно знать ее имя, которое указывает на ее местоположение в памяти (см. Пример 1).

Пример 1.

for (i = 1; i <= 10; i++)

{ A(I) = A(I) + X*B(I); }

В другом примере (см. Пример 2), написанном на языке SQL, имена служащих выбираются из файла не по адресу, а по содержимому полей AGE и QUOTA.

Пример 2.

SELECT FAMILY

FROM SLUZHASCHIE

WHERE AGE < 35 AND QUOTA = 4000

Этот способ адресации отличается от способа обращения к элементам массивов A и B. Способ адресации, используемый в языке SQL, называется ассоциативным обращением или ассоциативной адресацией.

В отличие от реляционной алгебры, где были представлены только операции запросов к базеданных, SQL является полным языком. В нем присутствуют не только операции запросов, но и операторы соответствующие DDL (Data Definition Language), то есть языку описания данных. Кроме этого, язык содержит операторы, предназначенные для администрирования базы данных. В коммерческих СУБД набор операторов SQL расширен путем включения операторов определения хранимых процедур и операторов определения триггеров.

Говоря о языке SQL нужно помнить о его главном назначении:

– во-первых, это средства описания хранимых данных, их структуры, правил доступа к ним. Эту часть будем называть языком определения данных ( Data Definition Language – DDL );

– во-вторых, это описание запросов на поиск и изменение данных в существующей базе. Эту часть будем называть языком манипулирования данными (Data Manipulation Lang­uage – DML);

– в-третьих, это средства управления доступа к данным. Эти средства образует группа операторов управления ограничения доступа к данным. Часто их относят к языку определения данных.

В SQL существует более 40 инструкций, каждая из которых требует выполнить определенное действие, например, извлечь данные, создать таблицу и т.д. все инструкции SQL имеют одинаковую структуру.

Каждая инструкция начинается с команды, т.е. с ключевого слова, описывающего действие, выполняемое инструкцией. Командами, например, являются CREATE, INSERT, SELECT и т.д.

После команды идет одно или несколько предложений, описывающих данные с которыми работает инструкция, либо содержится уточняющая информация о действии, выполняемой инструкцией. Каждое предложение также начинается с ключевого слова (например, WHERE, FROM, INTO и т.д.).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: