Для столбцов NUMBER в Oracle указывает ли указание длины на производительность?

Есть ли реальная разница в производительности между ЧИСЛО, ЧИСЛО (3) и ЧИСЛО (10)? Разве СУБД не использует 32 бита для хранения значения независимо и просто не ограничивает длину данных, когда они рассматриваются как строка?

Коллега обсуждал, что, например, было бы более эффективно использовать NUMBER (10) vs ЧИСЛО / ЧИСЛО (11), полагая, что n было числом байтов, а не длиной данных в символах. Обычно я бы согласился ограничить размер столбца, если гарантированно количество строк не превышает 10 ^ n или около того, но для этой конкретной базы данных ограничение на количество строк было буквально «максимально возможным», например 2 ^ 32 или ~ 4 миллиарда, хотя мы никогда не достигнем этого количества. Придумывать «самый низкий максимум» для этой ситуации кажется бессмысленным и пустой тратой времени, и я подумал, что использование NUMBER без указания длины будет проще и не повлечет никаких штрафов. Я прав?

8
задан Jake Petroules 15 November 2010 в 23:17
поделиться