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

consulta en servicio de mensajeria

Estas en el tema de consulta en servicio de mensajeria en el foro de Mysql en Foros del Web. Hola a todos. Tengo una tabla de mensajes entre usuarios como sigue: ID (PK): numero del mensaje. autor (ID del autor). destinatario (ID del destinatario). ...
  #1 (permalink)  
Antiguo 30/07/2013, 02:04
 
Fecha de Ingreso: junio-2010
Mensajes: 373
Antigüedad: 13 años, 10 meses
Puntos: 11
consulta en servicio de mensajeria

Hola a todos.

Tengo una tabla de mensajes entre usuarios como sigue:

ID (PK): numero del mensaje.
autor (ID del autor).
destinatario (ID del destinatario).
...

Es decir, en autor y destinatario, lo que guardo es el ID (y no el nombre) del usuario.

Con esta configuración lo que quiero es que un usuario, al acceder a la sección de mensajes, vea sus mensajes (perogrullada donde las haya...)

Me gustaria saber 2 cosas:

1) Si esta es la configuración correcta. Es decir, es mejor que guarde los ID? sería mejor simplemente almacenar el nombre?...es irrelevante que guarde uno u otro indistintamente??

2) En el caso de que fuese correcto como lo estoy haciendo, ...como puedo obtener en una consulta el nombre del autor del mensaje en lugar de su ID??Es que me estoy haciendo un lio..

Código MySQL:
Ver original
  1. SELECT mens.ID, mens.titulo, mens.cuerpo,
  2. (SELECT nmb_usuario FROM usuarios WHERE mens.autor) //esta es la duda
  3. FROM mens
  4. WHERE mens.destinatario = 'xxx'

Un saludo y muchas gracias por vuestro tiempo.
  #2 (permalink)  
Antiguo 30/07/2013, 02:27
 
Fecha de Ingreso: junio-2010
Mensajes: 373
Antigüedad: 13 años, 10 meses
Puntos: 11
Respuesta: consulta en servicio de mensajeria

Lo he resuelto...parece que aún sigo en "modo lunes":

Código MySQL:
Ver original
  1. SELECT ID, titulo, cuerpo,
  2. (SELECT nmb_usuario FROM usuarios WHERE ID=autor) AS autor
  3. FROM mens
  4. WHERE destinatario ='xxx'

No obstante, la primera duda aún sigue en pie.

Muchas gracias.
  #3 (permalink)  
Antiguo 30/07/2013, 02:50
 
Fecha de Ingreso: junio-2010
Mensajes: 373
Antigüedad: 13 años, 10 meses
Puntos: 11
Respuesta: consulta en servicio de mensajeria

Pues no, no la he resuelto.

Estaba trabajando con myphpadmin, pero al escribir la consuta en mysqli_query me tira un error donde me dice que "autor" no esta definido.

Esto me sucede porque con ciertos mensajes especiales (tales como alguna notificación que deba recibir el usuario por el motivo que sea), en el campo "autor" escribo un cero.

Alguna idea por favor?
  #4 (permalink)  
Antiguo 30/07/2013, 02:58
 
Fecha de Ingreso: junio-2010
Mensajes: 373
Antigüedad: 13 años, 10 meses
Puntos: 11
Respuesta: consulta en servicio de mensajeria

En mi conversacion conmigo mismo, me respondo:

Idiota, sí estaba bien.

Primera duda aún "on".
  #5 (permalink)  
Antiguo 30/07/2013, 07:33
sjj
 
Fecha de Ingreso: octubre-2008
Mensajes: 213
Antigüedad: 15 años, 5 meses
Puntos: 12
Respuesta: consulta en servicio de mensajeria

Personalmente me parece mejor guardar ID que nombres para vincular. No sé qué formato tengan esos nombres pero si son usuarios imagino que serán de lo más diversos. Por lo que se ve eso se vincula con una tabla de usuarios y siempre es mejor enlazar mediante ID, guardando un simple número...

Etiquetas: mensajeria, select, servicio, tabla
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 07:56.