Cómo establecer una relación entre dos tablas en Access
As relacións entre táboas establécense no Panel de relacións.
É importante considerar o seguinte para relacionar dúas táboas
Os campos das dúas táboas polos que as queremos relacionar deberán:
- Ser do mesmo tipo de dato (numérico e numérico, numérico e autonumérico -numérico polo tanto-, texto e texto...). Isto é obrigatorio.
- Os dous campos deberán ser indexados preferiblemente (nunha das táboas quizais Sí e CON duplicados e na outra táboa Sí e SEN duplicados -se a relación é de tipo un a varios-). Un dos dous podería ser ademais clave principal...
- Ter a mesma lonxitude (entero longo e entero longo, 25 e 25...).
O procedemento, que é moi intuitivo e gráfico, é o seguinte:
1
Situamos o punteiro do rato sobre o campo común a ambas táboas, estando sobre a táboa principal por exemplo.
2
Pulsamos o botón esquerdo do rato e, sen soltalo, arrastramos o campo ata o campo común da outra táboa relacionada.
Neste exemplo, desexamos relacionar o capo N_Socio da táboa de Socios, co campo N_Socio da táboa Participacións. Arrastremos polo tanto, un campo contra o outro:
3
Soltamos o botón do rato. Inmediatamente aparece en pantalla o cadro de diálogo que definirá a relación.
O panel mostranos os nomes dos campos e táboas involucradas, e permítenos crear a relación mediante o botón Crear. Na zona inferior aparece o tipo de relación a crear (na imaxe seguinte de tipo un a varios).
Neste caso, a relación establécese entre o campo N_socio da táboa Socios (á esquerda do panel) e o campo N_SOCIO da táboa Participacións (á dereita do panel):
4
Facemos clic sobre o botón Crear (arriba á dereita do panel) para establecer e fixar a relación.
Na xanela de relacións aparecerán ambas táboas unidas a través dunha liña (como un "cable"), cuxos extremos se sitúan fronte aos campos da relación.
Deste xeito establecemos unha relación entre a táboa de socios e a de participacións.
Ao realizar a relación desta maneira non establecemos ningunha seguridade. É dicir, seguindo co exemplo, tal e como definimos esta relación, poderiamos ter un participante que non tivéramos rexistrado na táboa de socios; é dicir, un participante cuxo nome, apelido... Non coñecéramos. ¿Queremos permitir isto?
Para evitar estes erros existe o concepto de integridade referencial, que estudaremos máis adiante.