Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4 курс (заочка) / Методический материал / Методический материал БСТ17xx.docx
Скачиваний:
20
Добавлен:
08.01.2022
Размер:
444.27 Кб
Скачать

6. Программный sql

Оператор

Смысл

Действие

DECLARE

Определяет курсор для запроса

Задает имя и определяет связанный с ним запрос к БД, который соответствует виртуал. набору данных (ВНД)

OPEN

Открыть курсор

Формирует ВНД, соответствующий описанию указанного курсора и текущему состоянию БД

FETCH

Считать строку из мн-ва строк, опред. курсором

Считывает очередную строку, заданную параметром команды из ВНД, соответствующего открытому курсору

CLOSE

Закрыть курсор

Прекращает доступ к ВНД, соотв.указанному курсору

PREPARE

Подготовить оператор SQL к динамическому выполнению

Сгенерировать план выполнения запроса, соответствующего заданному оператору SQL

EXECUTE

Выполнить оператор SQL, ранее подгот. к динамическому выполнению

Выполняет ранее подготовленный план запроса

В коммерческих СУБД набор основных операторов расширен. В большинство СУБД включены операторы определения и запуска хранимых процедур и операторы определения триггеров.

Типы данных

В языке SQL/89 поддерживаются следующие основные типы данных:

  • CHARACTER(n) или CHAR(n) — символьные строки постоянной длины в n символов. При задании данного типа под каждое значение всегда отводится n символов, и если реальное значение занимает менее, чем n символов, то СУБД автоматически дополняет недостающие символы пробелами.

  • NUMERIC[(n,m)] — точные числа, здесь n — общее количество цифр в числе, m — количество цифр слева от десятичной точки.

  • DECIMAL[(n,m)] или DEC[(n,m)] — точные числа, здесь n — общее количество цифр в числе, m — количество цифр слева от десятичной точки.

  • INTEGER или INT — целые числа.

  • REAL — вещественный тип чисел, который соответствует числам с плавающей точкой

  • DOUBLE PRECISION специфицирует тип данных с определенной в реализации точностью большей, чем определенная в реализации, точность для REAL.

В стандарте SQL92 добавлены следующие типы данных:

  • VARCHAR(n) — строки символов переменной длины.

  • NCHAR(N) — строки локализованных символов постоянной длины.

  • NCHAR VARYING(n) — строки локализованных символов переменной длины.

  • ВIТ(n) — строка битов постоянной длины.

  • BIT VARYING(n) — строка битов переменной длины.

  • DATE — календарная дата.

  • ТIМЕSTАМР (точность) — дата и время.

  • INTERVAL — временной интервал.

Большинство коммерческих СУБД поддерживают еще дополнительные типы данных, которые не специфицированы в стандарте. Например, для представления неструктурированного текста большого объема (аналогичен типу MEMO в настольных СУБД).

Могут использоваться константы заданных типов.

Для числовых типов данных:

213-314 612.716, + 551.702, 2.9Е-4 -134.235Е7 0.54267Е18

Строковые константы в одинарных кавычках: 'Крылов Ю.Д.’ 'Санкт-Петербург'

Константы даты, времени и временного интервала в реляционных СУБД представляются в виде строковых констант. Форматы констант отличаются в различных СУБД