Access - Dos relaciones sobre u mismo campo

   
Vista:

Dos relaciones sobre u mismo campo

Publicado por Cobo (1 intervención) el 20/02/2010 11:34:24
¡Hola!

Aunque he utilizado bases de datos como SQLServer programándolas desde distintos lenguajes de programación, me disponía a hacer "una cosa sencillita" y por eso me puse con Access el cual no había tocado nunca.

Para poneros en contexto se trata de una BD sobre fútbol cuyo esquema es el siguiente:
http://img682.imageshack.us/img682/4016/relationships.png

(Siento que esté en inglés para los que no lo practiquen :S). Mi problema es que intento crear una relacional adicional en "TeamHomey" (EquipoDeCasa) de la tabla "Matches" (Partidos) el campo "Team" (Equipo) de la tabla "Teams" (Equipos). Vamos, tal como lo tengo hecho con TeamAway.

El caso es que con el TeamAway no he tenido problema para hacerlo... pero en cuanto arrastro para crear una relación entre TeamHome y Team me diceh que ya existe una relación y que si quiero editarla:
- Si le digo que SÍ, me lleva al cuadro donde ya está la relación entre TeamAway -> Team. Si intento añadir debajo otra relación TeamHome -> Team , me dice que Access no puede hacer cumplir la integridad referencial para esa relación. Que si quiero puedo deshabilitar desmarcando las casillas sobre integridad referencial que existen en el cuadro de la relación (esto, obviamente, no me interesa)
- Si le digo que NO, dice uqe me crea una nueva relación... y lo que ahce es crearme una nueva tabla Teams1 (como si fuera una copia de Teams) y crear la relación entre TeamHome y esa nueva tabla. Esto obviamente no me interesa... :S.

Mi único propósito era que verificara que los 2 equipos del partido existen en la tabla "Equipos".

¿Alguien sabe por qué no puedo establecer la relación para ambos equipos?¿Alguna solución?

Muchísimas gracias por la ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Dos relaciones sobre u mismo campo

Publicado por Inge (43 intervenciones) el 24/02/2010 04:58:47
NO se puede exigir referencia en dos campos hacia uno solo, lo que debes hacer es hacer dos tablas, luego crear un puente en otro campo, por ejemplo puedes tener una tabla teamsHome y otra con teamaway y ambas usar un campo llamda IdTeam, y ese campo relacionarse con las demás tablas.

Sin embargo puedes usar mejor una sola tabla y usar VBA para controlar la referencia integral, ambas soluciones pueden salvar el día.

Espero te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar