integridad referencial 1. integridad referencial 2

21
Integridad Referencia l 1

Upload: piedad-montejano

Post on 28-Jan-2016

225 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Integridad Referencial 1. Integridad referencial 2

Integridad Referencia

l

1

Page 2: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

2

Page 3: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

3

Page 4: Integridad Referencial 1. Integridad referencial 2

Integridad referencialEjercicio: Sea la base de datos relacional siguiente:

1) ¿Que tipo de estructura tiene?2) Identificar las tablas anteriores.

4

Page 5: Integridad Referencial 1. Integridad referencial 2

Ejercicio: Sea la base de datos relacional siguiente:1) ¿Que tipo de estructura tiene?

5

Integridad referencial

Page 6: Integridad Referencial 1. Integridad referencial 2

Ejercicio: Sea la base de datos relacional siguiente:

1) ¿Que tipo de estructura tiene?2) Identificar las tablas anteriores.

6

Integridad referencial

Page 7: Integridad Referencial 1. Integridad referencial 2

Ejercicio: Sea la base de datos relacional siguiente:1) ¿Que tipo de estructura tiene?

7

Integridad referencial

Page 8: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

8

Page 9: Integridad Referencial 1. Integridad referencial 2

Restricción Referencial

Definición y aplicación de las reglas de integridad referencial a un par específico de clave ajena y clave primaria.

9

Integridad referencial

Page 10: Integridad Referencial 1. Integridad referencial 2

Integridad referencialRestricción Referencial

10

Page 11: Integridad Referencial 1. Integridad referencial 2

Integridad referencialRESTRIC: Impide la propagación de la operación.

SET NULL: Se pone a valor NULL todos los valores clave ajena que coincidan con los de la clave primaria que va a ser modificada o borrada,

CASCADE: Permite la propagación de la operación .

11

Page 12: Integridad Referencial 1. Integridad referencial 2

Integridad referencialRegla INSERT Sólo se aplica en las filas que se insertan en una tabla dependiente.

Para insertar una fila en una tabla dependiente, la clave ajena debe ser: NULL si esta permitido en la definición de

alguno de los atributos componentes de dicha clave, es decir, si alguno de los mismos permite el valor NULL.

Igual a un valor existente de clave primaria.

12

Page 13: Integridad Referencial 1. Integridad referencial 2

Integridad referencialRegla DELETESe trata de una regla explícita en la cual se pueden aplicar todas y cada una de las opciones de integridad.

Se aplica en las operaciones que se efectúan sobre las filas de una tabla padre.

13

Page 14: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

14

Page 15: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

15

Integridad referencial

Page 16: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

16

CREATE TABLE child( id INT, parent_id INT, INDEX par_ind (parent_id), FOREIGN KEY (parent_id) REFERENCES parent(id) ON DELETE CASCADE ) ENGINE=INNODB;

Page 17: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

17

Page 18: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

18

Page 19: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

19

Page 20: Integridad Referencial 1. Integridad referencial 2

Integridad referencial

20

CREATE TABLE product_order ( no INT NOT NULL AUTO_INCREMENT, product_category INT NOT NULL, product_id INT NOT NULL, customer_id INT NOT NULL, PRIMARY KEY(no), INDEX (product_category, product_id), FOREIGN KEY (product_category, product_id) REFERENCES product(category, id) ON UPDATE CASCADE ON DELETE RESTRICT, INDEX (customer_id), FOREIGN KEY (customer_id) REFERENCES customer(id) ) ENGINE=INNODB;

Page 21: Integridad Referencial 1. Integridad referencial 2

¡Gracias!

21