Está en la página 1de 2

Fundamentos de Bases de datos

Agosto-Diciembre 2013

PRCTICA DE LABORATORIO GUA 4 PARA EXAMEN.


(Referencia: pginas 19-

del Manual OracleSQL.PDF)

Valor por defecto


1) Agregue la columna min_salary con un valor por defecto de 65 en la tabla
Empleados2 (Creada en la prctica 3).
2) Agregue la columna max_salary con un valor por defecto de 150 en la tabla
Empleados 2 (Creada en la prctica 3).
Restricciones
Una restriccin es una condicin de obligado cumplimiento para una o ms columnas de
la tabla. El conjunto de restricciones son: NOT NULL, PRIMARY KEY, FOREIGN KEY,
UNIQUE y CHECK. Refirase a las pginas del manual para su detalle.
Hay dos formas de incluir stas restricciones en las tablas, desde su creacin (CREATE
TABLE), o bien, modificando las mismas (ALTER TABLE) por no haber incluido las
restricciones desde su creacin. Adems, cada una de las restricciones puede tener
nombre crptico si lo asigna Oracle, o bien un nombre significativo (entendible) si
asignamos nosotros mismos (etiquetarlo).
Suponga las siguientes declaraciones de restricciones son definidos desde la CREACIN
de diferentes tablas. Llene los espacios vacos para escribir sentencias equivalentes a las
que se especifican en cada rengln.

Restriccin sin etiqueta


(con CREATE TABLE)
A) NOT NULL
edadProf NUMBER(2) NOT NULL,

Es la forma ms comn de
todas.

Restriccin con etiqueta


(con CREATE TABLE)

Agregando restriccin a la tabla


(con ALTER TABLE).

edadProf NUMBER(2)
CONSTRAINT nnEdadProf NOT NULL,

ALTER TABLE profesor


MODIFY edadProf NUMBER(2) NOT NULL,
Comn

No es comn esta forma.


ALTER TABLE profesor
MODIFY edadProf NUMBER(2)
CONSTRAINT nnEdadProf NOT NULL, No
comn.
ubicArea VARCHAR(25)
CONSTRAINT nnubicAr NOT NULL,

ubicArea
NULL,

VARCHAR(25)

NOT

ALTER TABLE profesor


MODIFY ubicArea VARCHAR(25)
NULL,

NOT

ALTER TABLE profesor


MODIFY ubicArea VARCHAR(25)
CONSTRAINT CONSTRAINT nnubicAr NOT
NULL,
B) PRIMARY KEY
PRIMARY KEY (codProf),

codProf VARCHAR(15)
CONSTRAINT pkcodProf PRIMARY KEY,

ALTER TABLE profesor


ADD CONSTRAINT pkProf
KEY(codProf),

PRIMARY KEY (numTec),

numTec VARCHAR (16)


CONSTRAINT pknumTec PRIMARY KEY,

ALTER TABLE profesor


ADD CONSTRAINT pknumTec PRIMARY
KEY(numTec),
ALTER TABLE profesor
ADD CONSTRAINT fkcodProf FOREIGN

C)

FOREIGN KEY

codProf VARCHAR(15)
CONSTRAINT
fkcodProf

REFERENCES

PRIMARY

Fundamentos de Bases de datos


Agosto-Diciembre 2013
FOREIGN
KEY
REFERENCES profesor;

codProf

profesor,

FOREIGN
KEY
REFERENCES tecnico;

numTec

numTec VARCHAR (16)


CONSTRAINT
fknumTec
tcnico,

D) UNIQUE
placas VARCHAR(7) UNIQUE,

KEY (profesor),

REFERENCES

placas VARCHAR(7) CONSTRAINT uqPlacas


UNIQUE,
numSerie VARCHAR CONSTRAINT uqnumSer
UNIQUE,

numSerie VARCHAR UNIQUE,

E) CHECK
tipoSangre VARCHAR(2)
CHECK (tipoSangre = O+ OR
tipoSangre = O-),

edad
NUMBER(3)
CHECK(edad>=18 and edad <=
35),

ALTER TABLE profesor


ADD CONSTRAINT fknumTec
KEY (tecnico),

FOREIGN

ALTER TABLE auto


ADD
CONSTRAINT
UNIQUE(placas),

uqPlacas

ALTER TABLE auto


ADD
CONSTRAINT
UNIQUE(numSerie),

uqnumSer

ALTER TABLE persona


ADD CONSTRINT ckTipoSangre
CHECK(tipoSangre = O+ OR tipoSangre
= O-),
tipoSangre
VARCHAR(2)
CONSTRAINT
ckTipoSangre CHECK(tipoSangre = O+ OR
tipoSangre = O-),
Edad NUMBER(3) CONSTRAINT ckedad
CHECK (edad>=18 and edad <= 35),

ALTER TABLE persona


ADD CONSTRINT ckedad
CHECK (edad>=18 and edad <= 35),