13.08.2013 Views

Modelo objeto-relacional en Oracle ÍNDICE

Modelo objeto-relacional en Oracle ÍNDICE

Modelo objeto-relacional en Oracle ÍNDICE

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

HERENCIA<br />

• A continuación se muestran las s<strong>en</strong>t<strong>en</strong>cias para<br />

crear las tablas del tipo padre y de los dos<br />

subtipos.<br />

• Es necesario definir <strong>en</strong> cada tabla sus propias<br />

restricciones, ya que éstas no se propagan:<br />

CREATE TABLE Persona OF tipoPersona<br />

(PRIMARY KEY (DNI),<br />

CHECK(direccion like (‘%Madrid%’)));<br />

CREATE TABLE Estudiante OF tipoEstudiante<br />

(PRIMARY KEY (nombre));<br />

CREATE TABLE Empleado OF tipoEmpleado<br />

(PRIMARY KEY (DNI));<br />

HERENCIA<br />

• Las tablas Estudiante y Empleado definidas sobre<br />

subtipos del tipo tipoPersona no deb<strong>en</strong> cumplir <strong>en</strong><br />

absoluto las restricciones impuestas para la tabla<br />

Persona definida sobre el tipo padre TipoPersona.<br />

• Así, por ejemplo, podemos insertar <strong>en</strong> la tabla Empleado<br />

una fila <strong>en</strong> la que el valor del atributo direccion no<br />

cont<strong>en</strong>ga la cad<strong>en</strong>a ‘Madrid’, mi<strong>en</strong>tras que <strong>en</strong> la tabla<br />

Persona nos sería imposible.<br />

• Así mismo, podemos definir el campo nombre como<br />

clave primaria <strong>en</strong> la tabla Estudiante, aunque <strong>en</strong> la tabla<br />

padre Persona la clave primaria se definió sobre el<br />

campo DNI.<br />

22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!