Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD / Labs / Russian / Russian / Lab1R-Table creation altering and deletion.doc
Скачиваний:
18
Добавлен:
20.02.2016
Размер:
227.84 Кб
Скачать
        1. Использование типа данных number

Используйте тип NUMBER для хранения действительных чисел в формате с фиксированной или плавающей точкой. Гарантируется, что числа в этом формате будут совместимыми на всех платформах Oracle. Допустимая точность - 38 десятичных цифр. В столбце типа NUMBER можно запоминать положительные и отрицательные числа в диапазоне от 1 x 10-130 до 9.99...x10125, а также нули.

Для числовых столбцов вы можете специфицировать столбец как число с плавающей запятой следующим образом:

Column_name NUMBER

Вы можете указать точность – precision - (общее количество десятичных знаков в числе) и масштаб – scale - (количество десятичных знаков справа от десятичной точки) следующим образом:

Column_name NUMBER (<precision>, <scale>)

Например: число 123.45 имеет точность 5 и масштаб 2.

Для указания чисел специального типа используйте следующие возможности:

Целое число – NUMBER(p);

Число с фиксированной точкой – NUMBER(p,s)

Число с плавающей точкой - NUMBER

Точность и масштаб не являются обязательными, однако они позволяют проводить дополнительную проверку данных при их вводе. Если точность не определена, то значение столбца запоминается в том виде, как оно было указано. В табице ниже приводятся примеры запоминания данных при различных значениях точности и масштаба.

Исходные данные

Формат запоминания

Сохраняются так

7,456,123.89

NUMBER

7456123.89

7,456,123.89

NUMBER (9)

7456124

7,456,123.89

NUMBER (9,2)

7456123.89

7,456,123.89

NUMBER (9,1)

7456123.9

7,456,123.89

NUMBER (6)

(не допустимо, так как превышена точность)

7,456,123.89

NUMBER (7, -2)

7456100

        1. Использование типа данных date

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

Oracle использует свой внутренний формат для хранения дат. Данные типа даты запоминаются в полях фиксированной длины в 7 байт, каждый байт используется для хранения столетия, года, месяца, дня, часа, минуты и секунды соответственно.

При вводе и выводе даты стандартным форматом даты по умолчанию является DD-MON-YY. Например:

'13-NOV-92'

Для изменения этого формата по умолчанию на другой используйте параметр NLS_DATE_FORMAT. Для изменения формата по умолчанию даты на период сеанса работы используйте предложение ALTER SESSION. Для ввода даты, которая отличается от текущего формата по умолчанию воспользуйтесь функцией TO_DATE с соответствующей маской формата, например:

TO_DATE ('November 13, 1992', 'MONTH DD, YYYY')

Если используется формат DD-MON-YY, то YY указывает на год в 20-м столетии (например, 31-DEC-92 является датой December 31, 1992). Если необходимо представить год с указанием столетия, то используйте соответствующую маску формата, например, как это показано на примере выше.

Время запоминается в формате 24 часов: #HH:MM:SS. По умолчанию время в поле даты равно 12:00:00 A.M. если временная компонента даты не была указана. Если вводится только время, то дата по умолчанию предполагается равной первому дню текущего месяца. Для ввода только времени используйте функцию TO_DATE с маской формата, указывающей на присутствии только времени, например::

INSERT INTO EventTime (name, EvTime) VALUES

('START',TO_DATE('10:56',' HH:MI'));

СтандартSQL предполагает еще одну форму задания литерала типа даты (то есть собственно даты без времени), который также поддерживается в Oracle.Этот формат следующий:

Соседние файлы в папке Russian