Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
135
Добавлен:
22.03.2015
Размер:
2.28 Mб
Скачать

Приложение b Тиры данных в sql

ТИПЫ ДАННЫХ РАСПОЗНАВАЕМЫЕ С ПОМОЩЬЮ ANSI, состоят из символов и

различных типов чисел, которые могут классифицироваться как точные

числа и приблизительные числа. Точные числовые типы - это номера, с

десятичной точкой или без десятичной точки. Приблизительные числовые

типы - это номера в показательной (экспоненциальной по основанию - 10)

записи.

Для все прочих типов, отличия слишком малы чтобы их как-то классифи-

цировать.

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

аргумента, чей точный формат и значение меняется в зависимости от

конкретного типа. Значения по умолчанию обеспечены для всех типов, ес-

ли размер аргумента отсутствует.

Типы ANSI

Ниже представлены типы данных ANSI ( имена в круглых скобках - это

синонимы ):

TEXT ТЕКСТ

----------------------------------------------------------------------

CHAR  1  0Строка текста в реализационно-определенном фор-

(или CHARACTER) мате. Размер агрумента здесь это единственное

неотрицательное целое число которое ссылается к

максимальной длине строки. Значения этого типа,

должны быть заключены в одиночные кавычки, нап-

ример 'text'. Две рядом стоящие одиночные кавыч-

ки ('') внутри строки будет пониматься как одна

одиночная кавычка (').

ПРИМЕЧАНИЕ:

Здесь и далее, фраза Реализационно-Определенный или Реализацион-

но-Зависимый, указывает, что этот аргумент или формат зависит от

конкретной программы в которой реализуются данные.

EXACT NUMERIC  1  0ТОЧНОЕ ЧИСЛО

----------------------------------------------------------------------

DEC Десятичное число; то есть, число которое может

(или DECIMAL) иметь десятичную точку. Здесь аргумент размера

имеет две части: точность и масштаб. Масштаб не

может превышать точность. Сначала указывается

точность, разделительная запятая и далее аргу-

мент масштаба.

Точность указывает сколько значащих цифр имеет

число. Максимальное десятичное число составляю-

щее номер - реализационно-определенное значение,

равное или большее чем этот номер. Масштаб ука-

зывает максимальное число цифр справо от деся-

тичной точки. Масштаб = нулю делает поле эквива-

лентом целого числа.

NUMERIC Такое же как DECIMAL за исключением того, что

максимальное десятичное не может превышать аргу-

мента точности.

INT Число без десятичной точки. Эквивалентно DECI-

(или INTEGER) MAL, но без цифр справа от десятичной точки,

то-есть с масштабом равным 0. Аргумент размера

не используется (он автоматически установливает-

ся в реализационно-зависимое значение).

SMALLINT Такое же как INTEGER, за исключением того, что,

в зависимости от реализации, размер по умолчанию

может ( или не может ) быть меньшее чем INTEGER.

APPROXIMATE NUMERIC ПРИБЛИЗИТЕЛЬНОЕ ЧИСЛО

----------------------------------------------------------------------

FLOAT Число с плавающей запятой на основе 10 показа-

тельной функции. Аргумент размера состоит из од-

ного числа определяющего минимальную точность.

REAL Такое же как FLOAT, за исключением того, что ни-

какого аргумента размера не используется. Точ-

ность установлена реализационно-зависимую по

умолчанию.

DOUBLE Такое же как REAL, за исключением того, что реа-

PRECISION лизационно-определяемая точность для DOUBLE PRE-

( или DOUBLE ) CISION должна превышать реализационно-определяе-

мую точность REAL.

Эквивалентные типы данных в других языках

Когда используется вложение SQL в другие языки, значения используе-

мые и произведенные командами SQL, обычно сохраняются в переменных

главного языка( см. Главу 25 ). Эти переменные должны иметь тип данных

совместимый со значениями SQL, которые они будут получать. В дополне-

ниях, которые не являются частью официального SQL стандарта, ANSI

обеспечивает поддержку при использовании вложения SQL в четыре языка:

Паскаль, PL/I, КОБОЛ, и ФОРТРАН. Между прочим, он включает определение

эквивалентов SQL, для данных типов переменных используемых в этих язы-

ках.

Эквиваленты типов данных четырех языков определенных ANSI:

ПЛ/I

SQL ТИП ЭКВИВАЛЕНТ ПЛ/I

--------------------------------------

CHAR CHAR

DECIMAL FIXED DECIMAL

INTEGER FIXED BINARY

FLOAT FLOAT BINARY

КОБОЛ

SQL ТИП ЭКВИВАЛЕНТ КОБОЛА

------------------------------------------

CHAR () PIC X ()

INTEGER PIC S () USAGE

COMPUTTATIONAL

NUMERIC PIC S ( < nines with embedded V > )

DISPLAY SING LEADING SEPERATE

ПАСКАЛЬ

SQL ТИП ЭКВИВАЛЕНТ ПАСКАЛЯ

------------------------------------

INTEGER INTEGER

REAL REAL

CHAR () PACKED ARRAY [1..] OF CHAR

ФОРТРАН

SQL ТИП ЭКВИВАЛЕНТ ФОРТРАНА

------------------------------------------

CHAR CHAR

INTEGER INTEGER

REAL REAL

DOUBLE PRECISION DOUBLE PRECISION

Соседние файлы в папке Базы данных