Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory_BD.doc
Скачиваний:
57
Добавлен:
26.09.2019
Размер:
254.46 Кб
Скачать

8. Структура стандарта sql Типы данных и операции sql. Агрегирующие функции. Примеры.

Язык SQL появился в 70-е годы прошлого века как одно из таких средств. Существуют и используются две формы языка SQL – интерактивный и встроенный SQL. Встроенный SQL состоит из команд SQL, помещенных внутрь программ, написанных на каком-то языке программирования.

Команды языка SQL могут быть разбиты на несколько категорий.

-язык определения данных (data definition language, DDL), который дает возможность создания, изменения и удаления различных объектов базы данных (таблиц, индексов, пользователей, привилегий).

-язык манипулирования данными (data manipulation language, DML), который предоставляет возможность выборки информации из базы данных и ее преобразования.

-операторы управления транзакциями, которые обеспечивают согласованность данных путём объединения SQL-операторов в логическую транзакцию. Транзакция выполняются как единое целое либо успешно, либо неуспешно (COMMIT, ROLLBACK, SAVEPOINT);

-операторы управления сеансом работы изменяют установки, задаваемые для сеанса работы в БД (ALTER SESSION, SET ROLE);

-операторы управления системой изменяют установки всей БД (ALTER SYSTEM);

Типы данных SQL и операции

Символьные типы данных. К ним относятся типы:

CHAR(длина) – символьные строки фиксированной длины (при хранении недостающие символы дополняются пробелами). Длина не может превышать 255 символов;

VARCHAR(длина) – символьные строки переменной длины (хранится только значащая часть строки без ее дополнения пробелами). Максимальная длина определяется конкретной реализацией SQL Для этого типа могут задаваться синонимы CHARACTER VARYING или CHAR VARYING;

Числовые типы данных

INTEGER – используется для представления целых чисел длиной в 4 байта. Для этого типа может задаваться синоним INT;

SMALLINT - используется для представления целых чисел длиной в 2 байта;

NUMBER(точность, масштаб) – используется для хранения десятичных чисел с фиксированной точкой. Параметр «точность» задает общее число значащих цифр, а параметр «масштаб» - максимальное число цифр справа от десятичной точки.

FLOAT(точность), REAL, DOUBLE PRECISION – используются для хранения чисел с плавающей точкой.

Тип, предназначенный для хранения даты и времени, не является стандартным в SQL, В этой СУБД он имеет название DATE и позволяет хранить данные о дате и времени с точностью до секунд и поддерживать специальную арифметику даты и времени. Системная переменная SYSDATE хранит значение текущей даты и времени. Для преобразования типа DATE в строковый тип и обратно необходимо использовать системные функции to_date и to_char.

Перечислим операции, которых выполняются в языке SQL по-особому.

операнд IN(списокзначений) -возвращает истину, если значение операнда совпадает хотя бы с одним значением из списка, заданного вторым операндом. операнд NOT IN(списокзначений)

возвращает истину, если значение операнда не совпадает ни с одним значением из списка.

EXISTS(подзапрос)возвращает истину, если подзапрос-параметр не пуст, т.е. результат его выполнения содержит хотя бы одну строку.

ANY(подзапрос),ALL(подзапрос)используются с операциями сравнения и позволяют сравнивать первый операнд со множеством значений второго операнда.

Особо следует сказать об агрегирующих функциях SQL.

Sum, min, max, avg, count

NVL(выражение1, выражение2)которая возвращает значение выражения1, если оно непустое, и значение выражения2 – в противном случае;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]