CRÈDIT: Bases de Dades. UNITAT 2: Administració d'Oracle

Tema: Disseny de taules amb l'OEM.
Implementació de diagrames E-R.


Introducció


Targeta General

taules1.gif (9007 bytes)

figura 1: Fitxa General d'una taula, que mostra les columnes que conté

CURS_CURS_ID   DNI     NOM     DATA_NAIX    DATA_RESID PROFE_ID_P

============  ====  =======    =========   ========== ==========

1                1    jordi      01/01/80    01/01/90    1

1                2    pere       01/01/01    01/01/01    1

Tipus de dades Descripció
 

Char(tamany)

- Dades de tipus caràcter amb tamany màxim de 255 caràcters.
 

Varchar(tamany)

- Idèntic a Char. Es manté per raons de compatibilitat amb programes antics.
 

Varchar2([tamany]) i NVarchar2

- Cadenes de longitud variable fins a 2000 caràcters. El tamany és opcional.
 

Number(L, D)

- Dades de tipus numèric. El paràmetre L indica la longitud i el D el nombre de
xifres decimals.
 

Date

- Dates des d'1-gener del 4712 abans de Jesucrist (!!) fins al 31-desembre del 4712.
 

Long

- Cadenes de text de longitud variable amb un tamany de fins a 2 Gb.
Blob, Cblob, NClob Dades binaries

Targeta Constraints

taules2.gif (8504 bytes)

figura 2: restriccions sobre una taula, vista parcial

Tipus de restricció Descripció
CHECK En la columna "Check condition" posarem una condició lògica que han de complir les dades, com ara PVP > 0
PRIMARY KEY Indica que la columna és una clau primària de la taula
FOREIGN KEY Indica que la columna està relacionada amb un altre taula de rang superior
UNIQUE Les dades de la columna no admeten duplicats

ALTER TABLE "PRODUCTES" ADD( CHECK (PVP > 0));

 


Restriccions de tipus Primary key, Foreign key i rel.lacions entre taules

taules3.gif (1496 bytes)

figura 3: dues taules rel.lacionades segons un camp comú, ID_PROFE

La mecànica per relacionar dues taules sempre serà la mateixa: un camp clau PRIMARY KEY en la taula superior de la rel.lació queda lligat a un camp FOREIGN KEY de la taula jeràrquicament inferior.

De vegades a la restricció que rel.laciona una PARENT KEY amb una FOREIGN KEY l'anomenem RESTRICCIÓ D'INTEGRITAT DE LES DADES degut a que no podrem afegir dades en el camp FOREIGN KEY que no existeixin previament en el camp PARENT KEY. En l'exemple de les taules ALUMNE i PROFESSOR no podrem introduïr cap alumne sense professor tutor.


Targeta Storage

Permet especificar els paràmetres físics de la taula (la seva ocupació de disc i ús de recursos). Hi han dues possibilitats: Explicit (donem les dades en format numèric) o Auto Calculation (donem una idea de l'ús que farem de la taula i Oracle calcula els números).

Mode Storage => Explicit

NOTA: Si l'espai de taules on està la taula té definits els paràmetres d'autoextensió (veure el tema d'administració de l'espai físic) aleshores no podrem especificar les extensions de la taula, doncs crearien conflicte amb el de l'espai de taules.

Mode Storage => Auto Calculation

En aquest cas informem de l'activitat que tindrà la taula:

Oracle calcularà els paràmetres físics òptims tenint en compte l'activitat.


Targeta Options

Les opcions són:

 


Tornar