Читаем Понимание SQL полностью

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

Приложение C. НЕКОТОРЫЕ ОБЩИЕ НЕСТАНДАРТНЫЕ СРЕДСТВА SQL


ИМЕЕТСЯ РЯД ОСОБЕННОСТЕЙ ЯЗЫКА SQL которые пока не определены как часть стандарта ANSI или стандарта ISO (Международная Организация По Стандартизации), и являются общими для многочисленных реализаций, так как они были получены для практического использования. Это дополнительные элементы чисел этих особенностей. Конечно, эти особенности меняются от программы к программе, и их обсуждение предназначено только чтобы показать некоторые общие подходы к ним.

ТИПЫ ДАННЫХ

Типы данных поддерживаемые стандартом SQL, собраны в Приложении B. Это колличество для CHARACTER и разнообразие числовых типов. Реализация их может, фактически, быть значительно сложнее чем показано в терминах типов, которые они фактически могут использовать. Мы будем здесь обсуждать ряд таких нестандартных типов данных.

ТИПЫ DATE И TIME

Как упомянуто в Главе 2, тип данных DATE широко поддерживается, даже если он не часть стандарта. Мы использовали ранее в нашей таблице Порядков, этот тип использующий формат mm/dd/yyyy. Это стандартный формат IBM в США. Разумеется возможны и другие форматы, и программные реализации часто поддерживают ряд форматов, позволяя вам выбирать тот который лучше для вас подходит. Реализация которая предлагает эту особенность должна быть способна преобразовывать дату одного формата в другой - автоматически.

Имеются несколько основных форматов даты с которыми вы можете сталкнуться:


Стандарт

Формат

Пример

Международная Организация По Стандартизации (ISO)

yyyy-mm-dd

1990-10-31

Японский Индустриальный Стандарт (JIS)

yyyy-mm-dd

1990-10-31

IBM Европейский Стандарт (EUR)

dd.mm.yyyy

10.31.1990


Наличие специального типа определяемого для даты, дает возможность выполнять арифметические операция с датами. Например, вы можете добавлять число дней к дате и получать другую дату, в программе, самостоятельно следящей за числом дней в месяцах, високосными годами, и так далее. Даты могут также сравниваться; например фраза, дата A < дата B, означает, что дата A предшествует дате B по времени.

Кроме даты, большое количество программ определяют специальный тип для времени, который может также быть представлен в ряде форматов, включая следующие:


Стандарт

Формат

Пример

МЕЖДУНАРОДНАЯ ОРГАНИЗАЦИЯ ПО СТАНДАРТИЗАЦИИ (ISO)

hh-mm-ss

21.04.37

Японский Индустриальный Стандарт (JIS )

hh-mm-ss

21.04.37

IBM Европейский Стандарт

hh-mm-ss

21.04.37

IBM USA Стандарт(USA)

hh.mm AM/PM

9.04 PM


Время может добавляться или сравниваться точно также как дата, с коррекцией числа секунд в минутах или часах автоматически. Кроме того, специально встроенные константы указывающие текущую дату или время (CURDATE или CURTIME ) являются общими. Они похожи на константу USER (Пользователь) в которой их значение будет непрерывно меняться.

Можете ли вы включать время и дату в одно поле ? Некоторые реализации определяют тип DATE достаточно точно, чтобы включать туда еще и TIME.

В качестве альтернативы, третий обобщающий тип, TIMESTAMP, может быть определен как комбинация этих двух.


ТИПЫ ТЕКСТОВОЙ СТРОКИ

ANSI поддерживает только один тип чтобы представлять текст. Это - тип CHAR. Любое поле такого типа должно иметь определенную длину. Если строка вставляемая в поле меньше чем длина поля, она дополняется пробелами; строка не может быть длиннее чем длина поля.

Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже