Programación en castellano
Inicio > Tutoriales > MySQL > Integridad referencial en MySQL
-Tutoriales

Integridad referencial en MySQL


Un ejemplo más

Observar y estudiar detenidamente el diagrama entidad/relación de la figura que se muestra a continuación.

Diagrama entidad/relación

Queda como ejercicio al lector verificar que a partir de este diagrama se genera un código SQL similar al mostrado a continuación, que nos sirve para la creación de las tablas con sus correspondientes definiciones de claves foráneas:

Considerar que se desean hacer eliminaciones y actualizaciones en cascada, y que en la tabla poema_libro la clave primaria está formada por ambos campos (id_poema y id_libro).

CREATE TABLE libro (
  id_libro INT NOT NULL,
  titulo VARCHAR(100) NULL,
  precio NUMERIC(5,2) NULL,
  PRIMARY KEY(id_libro)
) TYPE=InnoDB;

CREATE TABLE escritor (
  id_escritor INT NOT NULL,
  nombre VARCHAR(30) NULL,
  apellidos VARCHAR(40) NULL,
  direccion VARCHAR(100) NULL,
  PRIMARY KEY(id_escritor)
) TYPE=InnoDB;

CREATE TABLE poema (
  id_poema INT NOT NULL,
  id_escritor INT NOT NULL,
  titulo VARCHAR(50) NULL,
  contenido TEXT NULL,
  PRIMARY KEY(id_poema),
  INDEX(id_escritor),
  FOREIGN KEY(id_escritor) REFERENCES escritor(id_escritor)
        ON DELETE CASCADE ON UPDATE CASCADE
) TYPE=InnoDB;

CREATE TABLE poema_libro (
  id_poema INT NOT NULL,
  id_libro INT NOT NULL,
  PRIMARY KEY(id_poema, id_libro),
  INDEX (id_poema), INDEX(id_libro),
  FOREIGN KEY(id_poema) REFERENCES poema(id_poema)
        ON DELETE CASCADE ON UPDATE CASCADE,
  FOREIGN KEY(id_libro) REFERENCES libro(id_libro)
        ON DELETE CASCADE ON UPDATE CASCADE
) TYPE=InnoDB;
 
Patrocinados
 

Copyright © 1999-2007 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network

red internet: juegos gratis | logos y melodias | hospedaje web linux | registro de dominios | servidores dedicados
más internet: comprar | recursos gratis | posicionamiento en buscadores | decoración web | gifs animados