Oracle中NUMBER類型如果不指定長度和小數點精度預設是多長

來源:互聯網
上載者:User

在Oracle中Number類型可以用來儲存0,正負定點或者浮點數,可表示的資料範圍在1.0 * 10(-130) —— 9.9...9 * 10(125) {38個9後邊帶88個0}的數字,當Oracle中的數學運算式的值>=1.0*10(126)時,Oracle就會報錯。

Number的資料聲明如下:

表示 作用 說明

Number(p, s) 聲明一個定點數 p(precision)為精度,s(scale)表示小數點右邊的數字個數,精度最大值為38,scale的取值範圍為-84到127

Number(p) 聲明一個整數 相當於Number(p, 0)

Number 聲明一個浮點數 其精度為38,要注意的是scale的值沒有應用,也就是說scale的指不能簡單的理解為0,或者其他的數。

定點數的精度(p)和刻度(s)遵循以下規則:

當一個數的整數部分的長度 > p-s 時,Oracle就會報錯

當一個數的小數部分的長度 > s 時,Oracle就會舍入。

當s(scale)為負數時,Oracle就對小數點左邊的s個數字進行舍入。

當s > p 時, p表示小數點後第s位向左最多可以有多少位元字,如果大於p則Oracle報錯,小數點後s位向右的數字被舍入

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.