Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Плавает ли точка в NUMBER? / 5 сообщений из 5, страница 1 из 1
26.04.2017, 10:57
    #39444530
holyguest
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Плавает ли точка в NUMBER?
Добрый день!

Хочу понять до конца, как работает NUMBER в Oracle. Из официальной документации:
OracleDocThe NUMBER datatype stores fixed and floating-point numbers. Numbers of virtually any magnitude can be stored and are guaranteed portable among different systems operating Oracle Database, up to 38 digits of precision.

Optionally, you can also specify a precision (total number of digits) and scale (number of digits to the right of the decimal point)

Теперь вопрос: есть поле NUMBER(10,7) , пытаюсь сохранить в него значение 1000.0000 и получаю ORA-01438: value larger than specified precision allowed for this column .

Ранее, я полагал (видимо, ошибочно), что 10 — общее количество цифр и, таким образом, если мы "не использовали" все 7 после точки, то можем как бы "сдвинуться" влево и получить нечто вроде NUMBER(10, 4), т.е. сохранить до точки до 6 цифр включительно. Это и была в моём понимании "плавающая точка".

Сейчас создаётся впечатление, что если мы завели поле как NUMBER(10,7), то до точки у нас ровно три знака, как ни крути, остальные могут быть, а могут и не быть после точки.


Если бы здесь убивали за тупые вопросы, я бы сдох в первый же день
...
Рейтинг: 0 / 0
26.04.2017, 11:08
    #39444543
Бракованный финский угорь
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Плавает ли точка в NUMBER?
...
Рейтинг: 0 / 0
26.04.2017, 11:14
    #39444547
AlexFF__|
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Плавает ли точка в NUMBER?
holyguestOracleDocThe NUMBER datatype stores fixed and floating-point numbers

NUMBER(10,7) - это и есть фиксированный
...
Рейтинг: 0 / 0
26.04.2017, 11:56
    #39444598
holyguest
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Плавает ли точка в NUMBER?
AlexFF__|,
А как получить с плавающей точкой? BINARY_FLOAT и BINARY_DOUBLE, полагаю. Смутило именно то, что там написано "fixed and floating-point numbers", и я решил, что fixed — это случаи NUMBER(*, 0), где точки попросту нет.
Спасибо!
...
Рейтинг: 0 / 0
26.04.2017, 11:58
    #39444603
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Плавает ли точка в NUMBER?
holyguestА как получить с плавающей точкой?
Код: plsql
1.
number
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Плавает ли точка в NUMBER? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]