Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Relaciones 1 a varios en Access

Estas en el tema de Relaciones 1 a varios en Access en el foro de Bases de Datos General en Foros del Web. Buenas Tengo varias tablas, por ejemplo estas dos: Tabla Experimentos *ID_Experimento Descripcion PersonaResponsable FechaInicio Tabla Temperatura *ID_Experimento Valor Fecha Hora Para un mismo experimento puedo ...
  #1 (permalink)  
Antiguo 24/06/2004, 19:32
 
Fecha de Ingreso: diciembre-2003
Mensajes: 69
Antigüedad: 20 años, 4 meses
Puntos: 0
Relaciones 1 a varios en Access

Buenas

Tengo varias tablas, por ejemplo estas dos:

Tabla Experimentos
*ID_Experimento
Descripcion
PersonaResponsable
FechaInicio

Tabla Temperatura
*ID_Experimento
Valor
Fecha
Hora

Para un mismo experimento puedo tener una cantidad de valores en la tabla temperatura y estoy tratando de hacer una relacion, llevo el mouse desde Tabla Temperatura el campo ID_Experimento a la Tabla Experimentos al campo ID_Experimento, le coloco que tenga integridad referencial pero en la parte donde dice Tipo de relacion me coloca: Uno a Uno y no hay forma de cambiarlo, le doy a Tipo de Combinacion en la 1, 2 y 3 y nada, no me aparece la opcion de cambiar que sea de uno a varios, que puede estar pasando???

Espero que alguien me pueda ayudar

Saludos
  #2 (permalink)  
Antiguo 25/06/2004, 01:41
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 707
Antigüedad: 21 años
Puntos: 0
Eso es porque tienes definido en ambas tablas como clave primaria, únicamente el campo ID_Experimento, supongo que lo que necesitas es, que la tabla Temperatura sea la parte muchos de la relación, para ello, la clave primaria de esa tabla debería ser, ID_Experimento, Fecha y Hora, entonces vuelves a hacer la relación

Un saludo
  #3 (permalink)  
Antiguo 25/06/2004, 08:31
 
Fecha de Ingreso: diciembre-2003
Mensajes: 69
Antigüedad: 20 años, 4 meses
Puntos: 0
Tienes razon, ya que la tabla Temperatura era una entidad debil y la clave serian los tres campos, pero no se como se puede poner varias claves en access, se puede hacer eso?

Saludos y gracias por la respuesta
  #4 (permalink)  
Antiguo 28/06/2004, 01:46
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 707
Antigüedad: 21 años
Puntos: 0
Primero quita la que tienes, y luego seleccionando los tres campos vuelves a darle al botón de la llave, otra forma, es entras en la pantalla de índices, y en el índice que es la clave primaria, le añades los otros tres campos, justo debajo.

Saludos
  #5 (permalink)  
Antiguo 28/06/2004, 15:55
Avatar de amanda75  
Fecha de Ingreso: junio-2003
Ubicación: cerca, pero no mucho
Mensajes: 684
Antigüedad: 20 años, 11 meses
Puntos: 0
Perdonad si meto el cazo pero me parece a mi que la solución está más en la línea que apuntaba Teri en su primera respuesta:

Si haces clave primaria de la tabla Temperaturas a los tres campos, se consigue que en ningún experimento se repita la combinación de los tres datos, pero para hacer la relación de uno a varios, ¿no habría que definir también en la tabla Temperaturas un campo numérico, algo así como (ExperimentoId), que sería el que se relacionase con Id_Experimento ( tabla Experimento) y del que sería la parte varios?

Además, no sé que interés puede tener declarar clave primaria a la fecha y a la hora.
  #6 (permalink)  
Antiguo 29/06/2004, 01:27
 
Fecha de Ingreso: abril-2003
Ubicación: Madrid
Mensajes: 707
Antigüedad: 21 años
Puntos: 0
No metes el cazo, solo se dan opiniiones, que de eso se trata...

En la tabla temperaturas, ya existe el campo Id_Experimento para relacionarlo con la tabla experimentos, el problema si defines ese único campo como clave, es que sólo tendrías un único registro en la tabla temperaturas para cada experimento, y no creo que sea lo que está intentando hacer, sólo lo creo, no he visto más que lo que pone en la pregunta.

Para que la relación sea Uno a Varios, Uno la tabla experimentos, Varios la tabla temperaturas, para cada experimento habrá una serie de valores en la tabla temperaturas para diferentes fechas y horas, lo que sí es raro es tener dos campos distintos, uno para fecha y otro para la hora, con un sólo campo fecha, se puede tener las dos cosas, la fecha y la hora, y la clave primaria de esa tabla sería Id_Experimento, FechaHora_Experimento, en la tabla Experimentos, la clave Id_Experimento.

Al hacer la relación, él solo te marcará uno a varios sin hacer nada.

Después de todo este rollo sin saber muy bien a que venía, sólo queda saber si hemos conseguido solucionar la duda de mvero o si por el contrario anda más despitad@ que un gato en un garage

Saludos
  #7 (permalink)  
Antiguo 29/06/2004, 22:34
Avatar de Atonovich  
Fecha de Ingreso: diciembre-2002
Ubicación: ...
Mensajes: 117
Antigüedad: 21 años, 4 meses
Puntos: 0
Pos yo dirìa que :
1) Por integridad referencial ID_EXPERIMENTO debe ser tu llave primaria, cumpliendo con la condición de las relgas de la normalizaciòn "la llave primaria tiene por objeto identificar a un registro unìvoco dentro de un dominio o tabla en una base de datos...bla bla bla"
2) ID_EXPERIMENTO, no puede ser llave primaria en la tabla Temperatura, debe ser una llave forànea teniendo entidad relacional con la PK (Primary Key) en la tabla experimentos, de esta manera ya està dada tu relaciòn 1 a muchos y se cumple perfecto la 2da ley de normalizaciòn de tablas en bases de datos relacionales dado que ID_EXPERIMENTO corresponde a una dependencia en existencia fuerte.... eso dice la teorìa "as far as i know..."

Saludos
__________________
" El hombre es una invención de Dios o Dios es una invención del hombre..."
  #8 (permalink)  
Antiguo 16/10/2009, 15:03
 
Fecha de Ingreso: octubre-2009
Mensajes: 1
Antigüedad: 14 años, 6 meses
Puntos: 0
Establecer relaciones

Hola!!!

aqui te dejo una dirección que te puede ayudar a establecer las relaciones que deseas.

"h t t p : / / office.microsoft.com /es-es /access/ HA101205343082.aspx"

espero te sirva!!!

PD: le puse espacios a la direccion porque no me dejaba publicar el post "por motivos de seguridad anti-spam, jajajaja"



  #9 (permalink)  
Antiguo 11/03/2010, 04:16
 
Fecha de Ingreso: septiembre-2007
Mensajes: 18
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Relaciones 1 a varios en Access

Buenas, tengo el mismo problema;
Una tabla cliente con:
id_cliente
nombre
empresa

Otra tabla visitas con:
id_cliente
fecha
observaciones.


Las claves principales son id_cliente en la tabla clientes y id_cliente y fecha en la tabla visitas.

El caso es que he probado mil formas y no me funciona, me da errores, no me deja meter más de 2 registros, me aparecen visitas en otros clientes....

A ver si alguien me puede echar una mano.

Gracias y un saludo!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 22:57.