oracle中number類型說明

來源:互聯網
上載者:User

1>.NUMBER類型細講:
Oracle number datatype 文法:NUMBER[(precision [, scale])]
簡稱:precision --> p
      scale     --> s

NUMBER(p, s)
範圍: 1 <= p <=38, -84 <= s <= 127
儲存資料範圍:-1.0e-130 <= number value < 1.0e+126    
儲存在機器內部的範圍: 1 ~ 22 bytes

有效為:從左邊第一個不為0的數算起的位元。
s的情況:
s > 0
   精確到小數點右邊s位,並四捨五入。然後檢驗有效位是否 <= p。
s < 0
   精確到小數點左邊s位,並四捨五入。然後檢驗有效位是否 <= p + |s|。
s = 0
   此時NUMBER表示整數。  

eg:
Actual Data   Specified As  Stored As
----------------------------------------
123.89           NUMBER         123.89
123.89           NUMBER(3)     124
123.89           NUMBER(6,2)   123.89
123.89           NUMBER(6,1)   123.9
123.89           NUMBER(4,2)   exceeds precision (有效位為5, 5 > 4)
123.89           NUMBER(6,-2)  100
.01234           NUMBER(4,5)   .01234 (有效位為4)
.00012           NUMBER(4,5)   .00012
.000127       NUMBER(4,5)   .00013
.0000012      NUMBER(2,7)   .0000012
.00000123     NUMBER(2,7)   .0000012
1.2e-4           NUMBER(2,5)   0.00012
1.2e-5           NUMBER(2,5)   0.00001
123.2564      NUMBER        123.2564
1234.9876     NUMBER(6,2)   1234.99
12345.12345   NUMBER(6,2)   Error (有效位為5+2 > 6)
1234.9876     NUMBER(6)     1235 (s沒有表示s=0)
12345.345     NUMBER(5,-2)  12300
1234567       NUMBER(5,-2)  1234600
12345678      NUMBER(5,-2)  Error (有效位為8 > 7)
123456789     NUMBER(5,-4)  123460000
1234567890    NUMBER(5,-4)  Error (有效位為10 > 9)
12345.58      NUMBER(*, 1)  12345.6
0.1           NUMBER(4,5)   Error (0.10000, 有效位為5 > 4)
0.01234567    NUMBER(4,5)   0.01235
0.09999       NUMBER(4,5)   0.09999

建立自增列的SQL,先建立序列

CREATE SEQUENCE   "ROLEIDSEQ"  MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 1 NOCACHE  NOORDER  NOCYCLE

Code
CREATE TABLE  "ROLE" 
   (    "ID" NUMBER(9,0) NOT NULL ENABLE, 
    "NAME" VARCHAR2(20), 
    "DESCRIPTION" VARCHAR2(64), 
     CONSTRAINT "ROLE_PK" PRIMARY KEY ("ID") ENABLE
   )
/

CREATE OR REPLACE TRIGGER  "BI_ROLE" 
  before insert on "ROLE"               
  for each row  
begin   
    select "ROLEIDSEQ".nextval into :NEW.ID from dual; 
end; 

/
ALTER TRIGGER  "BI_ROLE" ENABLE
/

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

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.