1>. Number Type Details:
Oracle number datatype Syntax: Number [(precision [, scale])]
Short for: precision --> P
Scale --> S
Number (P, S)
Range: 1 <= P <= 38,-84 <= S <= 127
Data storage range:-1.0e-130 <= number value <1.0e + 126
Saved in the machine range: 1 ~ 22 bytes
Valid: the number of digits from the first digit not 0 on the left.
S:
S> 0
Accurate to the second place to the right of the decimal point, and rounded. Then, check whether the valid bit is <= P.
S <0
It is accurate to the second place on the left of the decimal point, and rounded up. Then, check whether the valid bit is <= P + | S |.
S = 0
In this case, number indicates an integer.
Eg:
Actual data specified as stored
----------------------------------------
123.89 number 123.89
123.89 number (3) 124
123.89 number (123.89)
123.89 number (6, 1) 123.9
123.89 number () exceeds precision (valid bits: 5, 5> 4)
123.89 number (6,-2) 100
. 01234 number (01234). (effective bit: 4)
. 00012 number (00012 ).
. 000127 number (00013 ).
. 0000012 number (0000012 ).
. 00000123 number (0000012 ).
1.2e-4 Number (2, 5) 0.00012
1.2e-5 Number (0.00001)
123.2564 number 123.2564
1234.9876 number (1234.99)
12345.12345 number () error (valid bit: 5 + 2> 6)
1234.9876 number (6) 1235 (S does not indicate s = 0)
12345.345 number (5,-2) 12300
1234567 number (5,-2) 1234600
12345678 number (5,-2) error (valid 8> 7)
123456789 number (5,-4) 123460000
1234567890 number (5,-4) error (valid value: 10> 9)
12345.58 number (*, 1) 12345.6
0.1 number (0.10000) error (, valid bit: 5> 4)
0.01234567 number (0.01235)
0.09999 number (0.09999)
Create an SQL statement for the auto-increment column. First, create a sequence.
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
/