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

Relacionar tablas

Estas en el tema de Relacionar tablas en el foro de Mysql en Foros del Web. Buenas a todos se poco de mysql y trabajo con appserv, tengo una tabla de usuarios que se registran dicho usuarios tienen o no un ...
  #1 (permalink)  
Antiguo 20/09/2012, 06:51
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Relacionar tablas

Buenas a todos se poco de mysql y trabajo con appserv,

tengo una tabla de usuarios que se registran dicho usuarios tienen o no un telefono y pueden publicar 1 a 3 avisos.. y mi tabla queda mas o menos asi:

tabla usuarios:

id: mediumint incrementa con calvae primaria
nombre: varchar
apellido: varchar
nom_imagen: varchar
pass:varchar
email:varchar
puntos:varchar
fecha:varchar
etc...

y he leido que hacer una tabla con tantos campos es una mala practica...

el razonamiento surge que un usuario puede tener una imagen o mas... un domiclio o no (en el caso que no lo quiera dar ) en fin leyendo un poco mas

hice lo siguiente:


mi tabla la de arriba:

id: mediumint incrementa con calvae primaria
nombre:varchar
pass:varchar
email:varchar
id_datos:varchar clave unica


mi otra tabla se llama datos:

id: mediumint incrementa con calvae primaria
apellido:varchar
imagen1:varchar
imagen2:varchar
imagen3:varchar
id_datos:varchar clave unica


aca esta mi pregunta y millones de dudas... como puedo relacionar mi prima
tabla usuarios: on tabla datos?.. la relacion la quiero hacer con id_datos que es un campo en comun en las dos tablas, (siguiendo un tutorial en youtube).. pero no funciona. me dicen que me descargue worckbench mysql.. prefiero hacerlo con codigo o si existe un buen programa para relacionar tablas..

mucahas gracias de antemano

saludos a todos
fede
  #2 (permalink)  
Antiguo 20/09/2012, 07:07
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 11 años, 7 meses
Puntos: 4
Respuesta: Relacionar tablas

Cita:
Iniciado por fedefrankk Ver Mensaje
Buenas a todos se poco de mysql y trabajo con appserv,

tengo una tabla de usuarios que se registran dicho usuarios tienen o no un telefono y pueden publicar 1 a 3 avisos.. y mi tabla queda mas o menos asi:

tabla usuarios:

id: mediumint incrementa con calvae primaria
nombre: varchar
apellido: varchar
nom_imagen: varchar
pass:varchar
email:varchar
puntos:varchar
fecha:varchar
etc...

y he leido que hacer una tabla con tantos campos es una mala practica...

el razonamiento surge que un usuario puede tener una imagen o mas... un domiclio o no (en el caso que no lo quiera dar ) en fin leyendo un poco mas

hice lo siguiente:


mi tabla la de arriba:

id: mediumint incrementa con calvae primaria
nombre:varchar
pass:varchar
email:varchar
id_datos:varchar clave unica


mi otra tabla se llama datos:

id: mediumint incrementa con calvae primaria
apellido:varchar
imagen1:varchar
imagen2:varchar
imagen3:varchar
id_datos:varchar clave unica


aca esta mi pregunta y millones de dudas... como puedo relacionar mi prima
tabla usuarios: on tabla datos?.. la relacion la quiero hacer con id_datos que es un campo en comun en las dos tablas, (siguiendo un tutorial en youtube).. pero no funciona. me dicen que me descargue worckbench mysql.. prefiero hacerlo con codigo o si existe un buen programa para relacionar tablas..

mucahas gracias de antemano

saludos a todos
fede
no ace falta descargarte nada.es muy facil.
lo primero a ID_datos en las dos tablas le tienes que dar un indice. y después en vista de relaciones en ID_datos de la tabla datos tendras que ponerle que enlace a la tabla usuarios el campo ID_datos.. eso es con phpmyadmin..

o quieres acerlo por codigo?
  #3 (permalink)  
Antiguo 20/09/2012, 12:46
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Respuesta: Relacionar tablas

Hola.!!! Gracias por contestar, he leido sobre phpmyadmin,, seleccionan una tabla apretan alado de vista de imprecion y van elijiendo como hacerlo,, mi phpmyadmin parece que no lo tiene o tiene error..

elijo la tabla y me sale lo siguiente:




preciono donde esta la flecha y me sale algo asi como que busco algo..







Alomejor estoy haciendo algo mal no lo sinceramente..
por codigo es muy dificil?

muchas gracias por tu tiempo

saludos
fede
  #4 (permalink)  
Antiguo 21/09/2012, 04:27
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 11 años, 7 meses
Puntos: 4
Respuesta: Relacionar tablas

Cita:
Iniciado por fedefrankk Ver Mensaje
Hola.!!! Gracias por contestar, he leido sobre phpmyadmin,, seleccionan una tabla apretan alado de vista de imprecion y van elijiendo como hacerlo,, mi phpmyadmin parece que no lo tiene o tiene error..

elijo la tabla y me sale lo siguiente:




preciono donde esta la flecha y me sale algo asi como que busco algo..







Alomejor estoy haciendo algo mal no lo sinceramente..
por codigo es muy dificil?

muchas gracias por tu tiempo

saludos
fede
buenas no lo estas aciendo mal.debe estar hay el problema te explico,la tabla debe tener el motor de almacenamiento en InnoDB sino no deja..

las claves foraneas solo son para tablas InnoDB,

entonces..lo que debes acer es cambiar la tabla a InnoDB,

para ello:

en la tabla,si ya la tienes creada,tendras la pestaña operaciones,donde podras cambiar el nombre de la tabla y tal..pues una opcion es motor de almacenamiento..por defecto esta MyISAM entonceys debes cambiarlo a InnoDB y una vez lo tengas seleccionado..le das a continuar y veras que lo abras cambiado. entonces ya te aparecera donde tu bien as puesto te pondra vista de relaciones. y hay ya es lo que te puesto antes..

ahora bien,creando la tabla.cuando le pones los campos abajo te saldra..motor de almacenamiento.selecciona InnoDB y listo ;)

si necesitas el codigo en un momento te lo ago ;)

espero que te funcione,y si puedes pasame uno de karma ;)
  #5 (permalink)  
Antiguo 21/09/2012, 08:55
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Respuesta: Relacionar tablas

Hola, gracias por tu repuesta, viendo lo que me comentas que tengo que hacer una base de datos de tipo InnoDB, my appserv no lo tiene ...

Anoche me quede hasta las 4 de la mañana intentando instalar el xampp, me tira error objeto no encontrado, mil paginas ninguna dio en la tecla a mi error.. instale el wamp, hay que configurar usuarios, mysql anda pero php no,, en fin volvi a appserv de cero..

bien me pongo a crear mi tabla.. y cuando quiero buscar lel motor de base de datos me sale las siguientes opciones:




No encuentro InnoDB,... no se ya como hacerlo y no me gusta darme por vencido ya que lo necesito.!!!

como puedo actualizar mi phpmyadmin..?? seria lo unico,

Bueno muchas gracias y si tienes algo para ayudarme sera muuuy bien venido

saludos
fede
  #6 (permalink)  
Antiguo 21/09/2012, 09:03
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Relacionar tablas

¿Has visto esto?
http://www.desarrolloweb.com/articul...-en-mysql.html
  #7 (permalink)  
Antiguo 21/09/2012, 09:34
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Respuesta: Relacionar tablas

Hola hice lo que explica la web, que me dejaste, no encuentro el archivo en c:windows, pero si en c:appserv/mysql...

borre como dice la pagina y hice el listado:




No se como reiniciar los servicios, solo pongo stop y despues start.... desde el menu de appserv ...


Uso appserv.. se podra actualizar mysql?.. o phpmyadmin?'..

saludos y gracias por su tiempo..

fede
  #8 (permalink)  
Antiguo 21/09/2012, 09:49
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: Relacionar tablas

Hola se soluciono, reinicie la pc y anduvo,

Muchas gracias a todos.!!!! sepasaron

Saludos
fede
  #9 (permalink)  
Antiguo 21/09/2012, 13:55
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 11 años, 7 meses
Puntos: 4
Respuesta: Relacionar tablas

Cita:
Iniciado por fedefrankk Ver Mensaje
Hola se soluciono, reinicie la pc y anduvo,

Muchas gracias a todos.!!!! sepasaron

Saludos
fede
de nada ;)
  #10 (permalink)  
Antiguo 22/09/2012, 08:52
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Respuesta: Relacionar tablas

Ahora que anda no se que hacer, osea como relacionar tablas.. en fin seguire buscando tutoriales a ver que se encuentra

saludos
fede
  #11 (permalink)  
Antiguo 23/09/2012, 05:02
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 11 años, 7 meses
Puntos: 4
Respuesta: Relacionar tablas

Cita:
Iniciado por fedefrankk Ver Mensaje
Ahora que anda no se que hacer, osea como relacionar tablas.. en fin seguire buscando tutoriales a ver que se encuentra

saludos
fede
dinos que es lo que no sabes y te ayudaremos...poner las claves primarias y foraneas como te emos dicho si?
  #12 (permalink)  
Antiguo 24/09/2012, 09:37
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 16 años, 8 meses
Puntos: 7
Pregunta Respuesta: Relacionar tablas

Hola, priemro gracias por contestar..

Hice 2 tablas, dejo imagen, (la primera imagen el motor de la tabla es Innodb)
tabla: usuarios




tabla datos del usuario:






selecciono la tabla usuarios.






voy a relacionar y me sale este cuadradito.. donde dice ONDELTE - ON UPDATE creo que si elimino un campo se elimina el mismo en este caso datosfk


He aqui que hago, explico lo mas breve posible asi no los aburro.

en mi tabla usuario inserto el mail, contraseña el tipo, y en usuarioFK inserto tambien el tipo,,, (para probar), bien en la tabla datosusuario, se va a insertar automaticamente en el campo datosFK? lo que inserte en la tabla anterior?

bueno como veran mucho no se pero me doy mañas,

enserio se agradece mucho la ganas de ayudar..

Muchas gracias y saludos.!!!
fede

Etiquetas: relacionar, sql, tabla, tablas, campos
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




La zona horaria es GMT -6. Ahora son las 05:01.