Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

desimal(s,p) atau angka(s,p)?

Di Oracle, keduanya sama:

Pernyataan SQL yang membuat tabel dan cluster juga dapat menggunakan tipe data ANSI dan tipe data dari produk IBM SQL/DS dan DB2. Oracle mengenali nama tipe data ANSI atau IBM yang berbeda dari nama tipe data OracleDatabase. Ini mengubah tipe data ke tipe data Oracle yang setara, mencatat tipe data Oracle sebagai nama tipe data kolom, dan menyimpan data kolom dalam tipe data Oracle berdasarkan konversi yang ditunjukkan dalam tabel berikut.

Tabel di bawah kutipan ini menunjukkan bahwa DECIMAL(p,s) diperlakukan secara internal sebagai NUMBER(p,s) :

SQL> create table t (a decimal(*,5), b number (*, 5));

Table created

SQL> desc t;
Name Type        Nullable Default Comments 
---- ----------- -------- ------- -------- 
A    NUMBER(*,5) Y                         
B    NUMBER(*,5) Y  

Namun, skala default ke 0 untuk DECIMAL , yang artinya DECIMAL(*) diperlakukan sebagai NUMBER(*, 0) , yaitu INTEGER :

SQL> create table t (a decimal, b number, c decimal (5), d decimal (5));

Table created

SQL> desc t;
Name Type      Nullable Default Comments 
---- --------- -------- ------- -------- 
A    INTEGER   Y                         
B    NUMBER    Y                         
C    NUMBER(5) Y                         
D    NUMBER(5) Y   


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menyetel SQL

  2. ORA-38868

  3. Aksen dan susunan huruf besar/kecil di Oracle dengan LIKE

  4. Apa itu Undo dan redo di database Oracle

  5. periksa tanggal valid yang dideklarasikan di varchar2