Cursos como Profe > ICI - 3011 Computación 3 > BdD en la Practica (II) - BdD relacionales

BdD en la Practica (II) – BdD relacionales

Expandamos el ejemplo de persona.  Esta vez agregaremos una tabla que posea las direcciones para las personas. A esta tabla la relacionaremos por el campo idDireccion de la tabla Persona (Notar que este campo ya no es más un Texto) .

 Esta relación indica que una persona posee una dirección y esta equivale a la que posea el mismo idDireccion en la tabla de direcciones.

Es bueno destacar, que al existir esta relación cualquier cambio en una de las tablas afectará el comportamiento de la otra.

 

Las sentencias SQL para generar ambas tablas son :

 

Tabla dirección


CREATE  TABLE Direccion (

`idDireccion` INT NOT NULL AUTO_INCREMENT ,

`direccion` VARCHAR(100) NULL ,

`comuna` VARCHAR(45) NULL ,

`pais` VARCHAR(45) NULL ,

PRIMARY KEY (`idDireccion`) )

Tabla Persona

CREATE  TABLE Persona(

`rut` INT NOT NULL ,

`Nombre` VARCHAR(45) NULL ,

`Apellido` VARCHAR(45) NULL ,

`Telefono` INT NULL ,

`idDireccion` INT NOT NULL ,

PRIMARY KEY (`rut`) ,

INDEX `fk_direccion` (`idDireccion` ASC) ,

CONSTRAINT `fk_direccion`

FOREIGN KEY (`idDireccion` )

REFERENCES `mydb`.`Direccion` (`idDireccion` )

ON DELETE NO ACTION

ON UPDATE NO ACTION)

Preguntas Propuestas

 

  • Como generaríamos una clase Alumno y Profesor ? Asumamos que son parte de una Universidad.
  • Si quisiéramos que los alumnos sean parte de un portal que entidades o tablas deberíamos agregar a las relaciones. ?

 

 

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.