Скалярні типи даних

Скалярні типи даних

Кожна константа, змінна і параметр мають тип даних (або тип), який визначає формат зберігання, обмеження і допустимий діапазон значень. PL / SQL надає безліч визначених типів даних.

Символьний і числовий типи даних мають підтипи, які накладають певні обмеження на базовий тип. Наприклад, INTEGER ( "ціле число") і POSITIVE ( "позитивне число") є підтипами базового типу NUMBER.

NUMBER [(точність, масштаб)]

Числа з точність і масштабом. Точність в діапазоні від 1 до 38, а масштаб - від -84 до 127

Основний тип для цілих числі від - 2 147 483 647 до 2 147 483 647

Основний тип для цілих числі зі знаком - 2 147 483 647 до 2 147 483 647. Значення PLS_INTEGER вимагають менше пам'яті і швидше значень NUMBER і BINARY_INTEGER. Арифметичні операції на значеннями типу PLS_INTEGER швидше, ніж над даними NUMBER

Основний тип для символьних даних постійної довжини до 32768 байтів. Якщо максимальна довжина не задана, то за замовчуванням вона дорівнює 1.

Основний тип для символьних даних змінної довжини до 32767 байтів. Для змінних і констант типу VARCHAR2 розміру за замовчуванням не існує.

Основний тип для дат і часу. Значення DATE включають час в секундах з півночі. Діпозон дат: 4712 р до.н.е - 9999 н.е.

Розширює тип даних DATE і зберігає рік, місяць, день, годину, хвилину, секунду і частки секунди. Для завдання точності необхідно вказувати ціле литеральное значення в діопазоне від 0 до 9. Це число цифр у дробовій частині поля секунд. За замовчуванням - 6

TIMESTAMP [(точність)] WITH TIME ZONE

Розширює тип даних TIMESTAMP і містить зсув тимчасової зони. Зсув тимчасової зони являє собою різницю в годинах і хвилинах між місцевим часом і Універсальний скоординований час (Coordinated Universal Time або UTC). Для завдання точності необхідно вказувати ціле литеральное значення в діпозоне від 0 до 9. Це число цифр у дробовій частині поля секунд. За замовчуванням - 6

TIMESTAMP [(точність)] WITH LOCAL TIME ZONE

Розширює тип даних TIMESTAMP і містить зсув тимчасової зони. Зсув тимчасової зони являє собою різницю в годиннику і хвилина між місцевим часом і Універсальний скоординований час UTC. На відміну від TIMESTAMP WITH TIME ZONE вставляються в стовпці БД значення даного типу нормалізуються відповідно до тимчасової зоною бази. Крім того, зсув тимчасової зони не зберігається в стовпці. Під час вилучення значення з бази даних Oracle перетворює його до тимчасової зоні сеансу.

INTERVAL YEAR [(точність)] TO MONTH

Використовується для зберігання і маніпулювання інтервалами, що містять роки і місяці. Точність задає число цифр в поле років. Не можна використовувати символічні константи або змінні для завдання точності; Необхідно вказати ціле литеральное значення в діапазоні від 0 до 4. За замовчуванням - 2

INTERVAL DAY [(точность1)] TO SECOND [(точность1)]

Використовується для зберігання і маніпулювання інтервалами, що містять дні, години, хвилини і секунди. Точність 1 і точність 2 визначають відповідно число цифр в поле днів і точність в поле секунд. В обох випадках можна використовувати символічні константи або змінні для завдання точності; Необхідно вказати ціле литеральное значення в діапазоні від 0 до 9. Значення за замовчуванням відповідно -2 і 6