free hosting   image hosting   hosting reseller   online album   e-shop   famous people 
Free Website Templates
Free Installer

Docencia Autor

Llaves compuestas

Hasta ahora se ha visto, hacer una tabla con un código que sirve de llave única, pero es posible utilizar lo que se conoce como llaves compuestas (donde dos o mas campos juntos son una llave compuesta) y su uso es bastante común. Vea el siguiente ejemplo:

País

Código Nombre
01 Colombia
02 Venezuela
03 Ecuador
04 Brasil
05 Argentina

 

Departamento

Código País Código Departamento Nombre
01 A Valle del Cauca
01 B Antioquia
01 C Cundinamarca
01 D Santander

 

Municipio

Código País Código Departamento Código Municipio Nombre
01 A 1 Cali
01 A 2 Jamundí
01 A 3 Yumbo

 

Barrio

Código País Código Departamento Código Municipio Código Barrio Nombre
01 A 1 b1 Mayapan
01 A 1 b2 Capri
01 A 1 b3 Ciudad Jardín

 

¿Cómo se representa en Access?

La tabla que tendrá llave compuesta debe señalarle los campos que serán compuestos y oprimir clave principal


Observe que ha quedado ambos campos como una sola llave compuesta


Sucede igual con municipio


Y con barrio

La integridad referencial se hace de esta manera

Ahora debe señalar dos, el código del país de la tabla departamento corresponde con el código país de la tabla de municipio

Lo mismo sucede con Barrio, el CodigoPais de Municipio corresponde a CodigoPais de Barrio y así sucesivamente

Lo importante aquí es que se hace muy fácil crear códigos para un barrio, y muy fácil deducir la jerarquía. Por supuesto, digitar un barrio requiere que el país exista, el departamento exista y que el municipio exista.

También esto conlleva problemas de eliminación: usted no puede borrar un país si este tiene a su vez departamentos, y cada departamento tiene municipios y cada municipio tiene sus barrios. Aparece el concepto de borrado en cascada que se implementa en algunas bases de datos (peligroso) y que usted borrando el padre puede borrar los hijos, nietos y bisnietos.

 

Ejercicio

Hacer las tablas y la integridad referencial de:

1. Continente, País, Departamento, Ciudad, Comuna, Barrio, Predio

2. ONG, asociación, fundación, organización, proyecto, tarea, paso

3. País, departamento, ciudad, distribuidor, armario, caja, parcaja

Llénelos de datos desde el padre hasta el hijo, trate de borrar algún padre, mire que errores genera Access, luego active el borrado en cascada y observe lo que sucede.