dml.doc

(22 KB) Pobierz
Typy danych (dla Oracle)

Typy danych (dla Oracle)

·         tekstowe: CHAR(n) NCHAR(n) (max. 2000 b / wiersz ),
VARCHAR2(n) NVARCHAR2(n)  (max. 4000 b / w), LONG ( 2 GB znaków /wiersz)

·         CLOB NCLOB  (do 4 GB znaków) BLOB ( do 4 GB / W)  RAW (n) (2000 B/W) , LONG RAW ( do 2 GB/W)

·         numeryczne stałoprzecinkowe: NUMBER(p,s) (s może być ujemne!)
dokładność do 38 cyfr

·         numeryczne zmiennoprzecinkowe: FLOAT (to samo co NUMBER)

·         data/czas: DATE -- dokładność do sekundy, arytmetyka „na dniach"

·         ROWID typ binarny reprezentujący adres wiersza

 

Składnia podstawowa

 

Create Table schemat.nazwa_tabeli ( definicja tabeli) własności_fizyczne własności_tabeli

 

Create Table schemat.nazwa_tabeli As Select ....

 

definicja tabeli :

-          nazwa_columny typ [ Default wyrażenie ] [kol_ref_constraint ] [ kol_constraint ....]

-          Table_constraint

-          Table_ref_constraint

 

Więzy:

 

PRIMERY KEY

                            - określenie kolumny jako jednoznaczny identyfikator

 

NULL / NOT NULL

                            - określenie czy wartości w kolumnie  są obowiązkowe

 

CONSTRAINT nazwa

                            - określenie nazwy więzów (system przydziela standardowo SYS_Cn n – liczba całkowita)

 

UNIQUE              - wymuszenie różnych wartości na kolumnie

 

FOREIGN KEY (kol...) / REFERENCES schema.tabela (kol...)

                            - identyfikacja kolumy jako klucza obcego do kolumny wskazanej tabeli (rzeczywistej)

CHECK              - określenie warunku, jaki musi być spełniony w kolumnie każdego wiersza

 

Przykład:

 

CREATE TABLE st_o1.LOCATION

( Location_id  Number(3) Constraint pk_loc PRIMERY KEY,

   Regional_group VARCHAR2(20) )

 

 

CREATE st_01.DEPARTMENT

              ( Department_id Number(2) Constraint pk_dep PRIMERY KEY,

                 NAME            VARCHAR2(14) CONSTRAINT Upper_name

CHECK ( name = Upper(name)),

                 LOCATION_ID  NUMBER(3)               CONSTRAINT nie_pusty_loc NOT NULL

                                                                      CONSTRAINT fk_dep_loc

REFERENCES st_01.Location(Location_id)

              )

 

Zgłoś jeśli naruszono regulamin