Агрегатные Функции.
Типы данных в SQL.
Структура SQL.
Общие сведения.
9.1. SQL
(структурированный язык запроса)
Появился после того, как Кодд опубликовал материал о реляционной алгебре. Разработан в фирме IBM и впервые появился в первом варианте РБД СУБД SYSTEM-R. Потом использовался в других СУБД и постепенно стал неписанным стандартом в разработке РБД. Но в качестве стандарта он был утвержден лишь в 1989г. В конце92-го года появляется новый стандарт SQL-2, который поддерживает все средства SQL-89 и, наконец, в 99г. появился SQL-3.
В нём появился новый раздел, который вводит стандарты на новые конструкции: события, и триггеры. Не содержит тригонометрические функции: операторы sin, cos и.т.д. Содержит набор стандартных операторов доступа к данным, хранящимся в базе данных. Операторы языка SQL могут встраиваться в обычные языки программирования. Язык SQL является интерпретатором.
9.2. Стуктура SQL
Язык SQL разбит на 6 подъязыков:
9.2.1. Язык определения данных (DDL)
Операторы этого языка предназначены для определения структуры данных:
CREATE TABLE - создать новое отношение (таблицу).
DROP TABLE - удалить таблицу из БД.
ALTER TABLE - изменяет структуру существующей таблицы или изменяет ограничения целостности таблицы.
CREATE VIEW - создание виртуальной таблицы, в которую при выполнении запроса будут вводится данные.
DROP VIEW – удаляет виртуальную таблицу.
ALTER VIEW – изменяет структуру виртуальной таблицы.
CREATE INDEX – создает индекс.
DROP INDEX – удаляет индекс.
9.2.2. Язык манипулирования данными (DML)
Содержит 3 оператора:
DELETE – удаляет один или несколько кортежей.
INSERT – вставляет кортеж в отношение.
UPDATE – обновляет значение одного или несколько атрибутов в отношении.
9.2.3. Язык запросов (DQL)
Он состоит всего из одного типа предложений SELECT.
9.2.4. Средства управления транзакциями
Транзакция - последовательность операций, которые переводят БД из одного непротиворечивого состояния в другое.
В нём используются три предложения:
COMMIT – завершает комплексную взаимосвязанную обработку информации, объединенную в транзакцию и фиксирует новое непротиворечивое состояние БД.
ROLLBACK – противоположен по значению. Это оператор отката транзакции.
SAVEPOINT – позволяет сохранить промежуточное состояние БД в процессе выполнения транзакции, позволяет запомнить это состояние для того, чтобы к нему можно было вернуться.
9.2.5. Средства администрирования данных
ALTERDATABASE – осуществляет изменение набора основных объектов в БД и ограничений, касающихся базы в целом.
ALTERDBAREA – изменяет ранее созданную область хранения.
ALTERPASSWORD – изменяет пароль для всей БД.
CREATEDATABASE – создает новую БД с новыми параметрами.
CREATEDBAREA – позволяет создать новую область хранения данных и сделать её доступной для размещения информации.
DROPDBAREA – позволяет удалить существующую область хранения БД, если в ней в настоящий момент не располагаются активные данные.
GRANT – администратор предоставляет права доступа на выполнение операций над некоторыми объектами БД.
REVOKE – администратор лишает прав доступа.
9.2.6. Программный SQL
DECLARE – определяет курсор.
Курсор - некоторое имя и связанный с ним запрос к БД, а также соответствующий виртуальный набор данных. Курсор:
Имя (набор символов)
Запрос
Представление
OPEN – открывает курсор.
Занесение в виртуальный набор данных, которые соответствуют описанию курсора и соответствуют текущему состоянию БД.
CLOSE – закрывает курсор.
9.3. Типы данных в SQL
сhar (n) - строка из n символов.
NUMERIC (m, n) - числа, с фиксированным положением десятичной точки.
m - общее количество знаков.
n - количество знаков после точки.
INTEGER - целое число длиной 4 байта.
SМALLINT - целые числа длиной 2 байта.
FLOAT (n) - числа с плавающей точкой, n-размер числа в байтах.
BIT (n) - двоичное число длиной n разрядов.
DATE - календарная дата.
TIMESTAMP - дата и время.
INTERVAL - временной интервал.
MEMO - позволяет заносить большие объемы текстовой информации.
MONEY -может иметь только сотые доли.
9.4. Агрегатные функции
Позволяют выполнить вычисления обобщенных групповых значений. Таких функций в SQL пять:
1) COUNT - выдаёт количество непустых значений или строку, которую выдал запрос.
2) SUM - применяется только к числовым атрибутам и выдаёт сумму всех выбранных значений данного поля.
3) AVG - вычисляет среднеарифметические значения данного поля.
4) MIN - вычисляет минимальное значение указанного поля.
5) MAX - вычисляет максимальное значение указанного поля.
Лекция 10. Язык SQL. Часть 2.