Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 5 СУБД.doc
Скачиваний:
4
Добавлен:
14.07.2019
Размер:
160.26 Кб
Скачать

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

Оператор

Смысл

Действие

DECLARE

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

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

OPEN

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

Формирует виртуальный набор данных, соответствующий описанию указанного курсора и текущему состоянию БД

FETCH

Считать строку из множества строк, определенных курсором

Считывает очередную строку, заданную параметром команды из виртуального набора данных, соответствующего открытому курсору

CLOSE

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

Прекращает доступ к виртуальному набору данных, соответствующему указанному курсору

PREPARE

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

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

EXECUTE

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

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

Типы данных

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

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

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

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

    • DEC[(n,m)] — то же, что и DECIMAL[(n,m)].

  • Integer или int — целые числа, соответствует целым числам, хранимым в четырех байтах.

  • SMALLINT — целые числа меньшего диапазона соответствует целым числам, хранимым в двух байтах.

  • FLOAT[(n)] — числа большой точности, хранимые в форме с плавающей точкой. Здесь n — число байтов, резервируемое под хранение одного числа. Диапазон чисел определяется конкретной реализацией.

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

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

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

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

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

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

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

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

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

  • TIMESTAMP(точность) — дата и время.

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

Встроенные функции

В стандарте SQL1 не были определены встроенные функции, в большинстве коммерческих СУБД такие функции были реализованы, и в стандарт SQL2 уже введен ряд стандартных встроенных функций:

  • BITLENGTH(строка) — количество битов в строке;

  • CAST(значение AS тип данных) — значение, преобразованное в заданный тип данных;

  • CHARLENGTH(строка) — длина строки символов;

  • CONVERT(строка USING функция) — строка, преобразованная в соответствии с указанной функцией;

  • CURRENTDATE — текущая дата;

  • CURRENTTIME(точность) — текущее время с указанной точностью;

  • CURRENTTIMESTAMP(точность) — текущие дата и время с указанной точностью;

  • LOWER(строка) — строка, преобразованная к нижнему регистру;

  • OCTEDLENGTH(строка) — число байтов в строке символов;

  • POSITION( первая строка IN вторая строка) — позиция, с которой начинается вхождение первой строки во вторую;

  • SUBSTRING(строка FROM n FOR длина) — часть строки, начинающаяся с n-го символа и имеющая указанную длину;

  • TRANSLATE(строка USING функция) — строка, преобразованная с использованием указанной функции;

  • TRIM(BOTH символ FROM строка) — строка, у которой удалены все первые и последние символы;

  • TRIM(LEADING символ FROM строка ) — строка, в которой удалены все первые указанные символы;

  • TRIM(TRAILING символ FROM строка) — строка, в которой удалены последние указанные символы;

  • UPPER(строка) — строка, преобразованная к верхнему регистру.

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