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

Como Unir tablas que están en BD distintas?

Estas en el tema de Como Unir tablas que están en BD distintas? en el foro de Mysql en Foros del Web. Buenas tardes Foreros, tengo el siguiente inconveniente y espero me puedan ayudar: necesito hacer una consulta uniendo dos tablas que se encuentran en dos bases ...
  #1 (permalink)  
Antiguo 22/09/2011, 10:54
 
Fecha de Ingreso: mayo-2008
Mensajes: 489
Antigüedad: 16 años
Puntos: 8
Pregunta Como Unir tablas que están en BD distintas?

Buenas tardes Foreros, tengo el siguiente inconveniente y espero me puedan ayudar:

necesito hacer una consulta uniendo dos tablas que se encuentran en dos bases de datos diferentes, hasta ahí no hay problema, la cosa se me complica, porque cada base de datos tiene su usuario y contraseña diferente. he intentado hacer:

Código MySQL:
Ver original
  1. (SELECT t1.campo FROM db1.tabla1 t1) UNION (SELECT t2.campo FROM db2.tabla2 t2)

pero me arroja el siguiente error: "SQL Error (1142): SELECT command denied to user 'user'@'host' for table 'tabla1'"

no tengo acceso a los permisos de usuario para MYSQL, sin embargo, cuando hago las consultas por separado, no hay problema, debido a que cada consulta tiene su propia conexión.

Código PHP:
Ver original
  1. mysql_query("SELECT campo FROM tabla1", $conexion1);
  2. mysql_query("SELECT campo FROM tabla2", $conexion2);

hay alguna manera de especificar en la consulta, el usuario perteneciente a la base de datos, para que diferenciar las conexiones?

muchas gracias de antemano.
__________________
AppLab - Laboratorio de Ideas
  #2 (permalink)  
Antiguo 22/09/2011, 12:35
Avatar de Ribon  
Fecha de Ingreso: septiembre-2010
Ubicación: El firmamento
Mensajes: 487
Antigüedad: 13 años, 7 meses
Puntos: 91
Respuesta: Como Unir tablas que están en BD distintas?

Un usuario que no tiene permiso a ver el esquema de otro usuario no podrá acceder a las tablas del otro usuario a menos que se le de el permiso, eso es por seguridad y así lo estipula la biblia del DBA jajajaja.

Lamentablemente vas a tener que darle permisos a uno de los 2 usuarios para que tenga acceso a la base de datos del otro usuario.

Código MySQL:
Ver original
  1. GRANT ALL ON db2.* TO user1

lo otro es que para tu caso como es una unión ps puedes recorrer ambas consultas por separado y ya está.

Ojala te sirva esta información y si estoy equivocado ps es lo que yo sé xD!

Saludos.
  #3 (permalink)  
Antiguo 22/09/2011, 14:01
 
Fecha de Ingreso: mayo-2008
Mensajes: 489
Antigüedad: 16 años
Puntos: 8
Respuesta: Como Unir tablas que están en BD distintas?

Gracias, @Ribon quería evitar la solución de recoger ambas consultas por separado, debido a que el código hace parte de un modulo que manejan varias webs.

Si alguien sabe de alguna solución diferente sin tener acceso a cambiar los privilegios de los usuarios, les agradecería.
__________________
AppLab - Laboratorio de Ideas

Etiquetas: bd, query, select, sql, tabla, tablas
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 16:10.