2012-05-19 15 views
6

Przeczytałem przewodnik dla początkujących dla Oracle DB. Definicja precyzji i skali jest dość myląca. Książka mówi:Co oznacza dokładność i skala w typie danych Oracle NUMBER

number(6,3) 

Oracle allows for 2 not 6 significant digitalis. 

Mój problem jest, 6 oznacza precyzję. co oznacza liczbę cyfr znaczących. więc powinien przyjąć 6 cyfr znaczących. Dlaczego książka mówi, że to 2 cyfry znaczące

Książka Mam na myśli to Oracle Database 11g A Beginner's Guide by McGraw Hill Professional, Dec 18, 2008, numer strony 12

Odpowiedz

5

Sprawdź się online Oracle doc:

p jest precyzja, lub maksymalna liczba cyfr dziesiętnych ze znaczącymi cyframi dziesiętnymi, , gdzie cyfrą najbardziej znaczącą jest lewa, najbardziej niezerowa cyfra , a najmniej znaczącą cyfrą jest cyfra najbardziej znana. Oracle gwarantuje przenośność numerów z dokładnością do 20 cyfr bazowych, co odpowiada 39 lub 40 cyfrom dziesiętnym w zależności od położenia kropki dziesiętnej.

s to skala lub liczba cyfr od kropki dziesiętnej do najmniej znaczącej cyfry . Skala może zawierać się w zakresie od -84 do 127.

Skala pozytywna to liczba cyfr znaczących po prawej stronie od kropki dziesiętnej do najmniej znaczącej cyfry.

Skala ujemna to liczba cyfr znaczących po lewej stronie kropki dziesiętnej , ale nie obejmująca najmniej znaczącej cyfry. Dla skali ujemnej najmniej znacząca cyfra znajduje się po lewej stronie kropki dziesiętnej , ponieważ rzeczywiste dane są zaokrąglane do określonej liczby miejsc po lewej stronie przecinka dziesiętnego. Na przykład specyfikacja (10, -2) oznacza zaokrąglenie do setek.