|
Базы данных: SQL
Понимание SQL. Приложение B
Источник:
ТИПЫ ДАННЫХ В SQL Типы данных распознаваемые с
помощью ANSI, состоят из символов и различных типов чисел,
которые могут классифицироваться как точные числа и
приблизительные числа. Точные числовые типы - это номера, с
десятичной точкой или без десятичной точки. Приблизительные
числовые типы - это номера в показательной ( экспоненциальной
по основанию - 10 ) записи. Для все прочих типов, отличи
слишком малы чтобы их как-то классифицировать. Иногда типы
данных используют аргумент, который называю размером
аргумента, чей точный формат и значение меняется в зависимости
от конкретного типа. Значения по умолчанию обеспечены для всех
типов, если размер аргумента отсутствует.
ТИПЫ ANSI Ниже представлены типы данных ANSI (
имена в круглых скобках - это синонимы ):
| TEXT
| ТЕКСТ
|
| CHAR(или CHARACTER)
| Строка текста в реализационно-определенном формате.
Размер аргумента здесь это единственное неотрицательное
целое число которое ссылается к максимальной длине
строки. Значения этого типа, должны быть заключены в
одиночные кавычки, например 'text'. Две рядом стоящие
одиночные кавычки ('') внутри строки будет пониматься
как одна одиночна кавычка ('). | ПРИМЕЧАНИЕ: Здесь и далее, фраза
Реализационно-Определенный или Реализационно-Зависимый,
указывает, что этот аргумент или формат зависит от конкретной
программы в которой реализуются данные.
| EXACT NUMERIC
| ТОЧНОЕ ЧИСЛО
|
| DEC (или DECIMAL)
| Десятичное число; то есть, число которое мoжет иметь
десятичную точку. Здесь аргумент размера имеет две
части: точность и масштаб.Масштаб не может превышать
точность. Cначала указывается точность, разделительная
запятая и далее аргумент масштаба. Точность указывает
сколько значащих цифр имеет число. Максимальное
десятичное число составляющее номер -
реализационно-определенное значение, равное или большее
чем этот номер. Масштаб указывает максимальное число
цифр справа от десятичной точки. Масштаб = нулю делает
поле эквивалентом целого числа. |
| NUMERIC
| Такое же как DECIMAL за исключением того, что
максимальное десятичное не может превышать аргумента
точности. |
| INT( или INTEGER)
| Число без десятичной точки. Эквивалентно DECIMAL, но
без цифр справа от десятичной точки, то есть с масштабом
равным 0. Аргумент размера не используется (он
автоматически устанавливается в реализационно-зависимое
значение). |
| SMALLINT
| Такое же как INTEGER, за исключением того, что, в
зависимости от реализации, размер по умолчанию может (
или не может ) быть меньшее чем INTEGER. |
| APPROXIMATE NUMERIC
| ПРИБЛИЗИТЕЛЬНОЕ ЧИСЛО |
| FLOAT
| Число с плавающей запятой на основе 10 показательной
функции. Аргумент размера состоит из одного числа
определяющего минимальную точность. |
| REAL
| Такое же как FLOAT, за исключением того, что
никакого аргумента размера не используется. Точность
установлена реализационно-зависимую по умолчанию. |
| DOUBLE PRECISION ( или DOUBLE )
| Такое же как REAL, за исключением того, что
реализационно-определяемая точность для DOUBLE PRECISION
должна превышать реализационно-определяемую точность
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
|
Приложение A | Приложение C
При перепечатке любого материала
с сайта, видимая ссылка на источник www.warayg.narod.ru
и все имена, ссылки авторов обязательны.
© 2005
|