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

Problema para hacer un SELEC con campos de dos bases de datos

Estas en el tema de Problema para hacer un SELEC con campos de dos bases de datos en el foro de Bases de Datos General en Foros del Web. Hola, me encuentro con un nuevo problema en mi proyecto, a ver si alguien me puede echar una mano. Hasta ahora he estado consultando campos ...
  #1 (permalink)  
Antiguo 11/03/2008, 13:34
Avatar de Henki  
Fecha de Ingreso: febrero-2008
Mensajes: 74
Antigüedad: 16 años, 2 meses
Puntos: 0
Problema para hacer un SELEC con campos de dos bases de datos

Hola,
me encuentro con un nuevo problema en mi proyecto, a ver si alguien me puede echar una mano.
Hasta ahora he estado consultando campos de una bases de datos. El problema es que ahora tengo que hacer una consulta relacionando un campo de esa base de datos con otro campo de una segunda base.
Divido el problema en dos puntos:
1- Por lo que he visto, puedo hacerlo haciendo el select normal para los campos de la primera BD, y escribiendo [NombreBD2].[dbo].[CampoBD2] para los campos de la segunda base. Mas o menos me funciona, o al menos no me da los mensajes de error que da si no pongo esto. Es correcto lo que hago?
El segundo problema, es que para mostrar los reultados por pantalla como html tengo que hacer un odbc_connect para conectar con la BD, un odbc_exec, un odbc_result para sacar los datos, etc, y aqui vienen mas problemas al ser dos bases de datos. Como se haria esto? Alguna ayuda?
salu2 y muchas gracias
  #2 (permalink)  
Antiguo 11/03/2008, 13:38
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Problema para hacer un SELEC con campos de dos bases de datos

Trasladado a Base de Datos.
  #3 (permalink)  
Antiguo 12/03/2008, 09:43
Avatar de Henki  
Fecha de Ingreso: febrero-2008
Mensajes: 74
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Problema para hacer un SELEC con campos de dos bases de datos

Cita:
Iniciado por GatorV Ver Mensaje
Trasladado a Base de Datos.
tienes razon, mis disculpas por haberlo puesto en mal sitio. A ver si alguien puede echarme una manita,
salu2
  #4 (permalink)  
Antiguo 17/03/2008, 21:17
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Problema para hacer un SELEC con campos de dos bases de datos

La nomenclatura que usas es correcta... al menos en términos de SQL Server, ya que ni por error mencionas qué manejador usas.

Ahora, usar ODBC a estas alturas me parece una barbaridad. Revisa la posibilidad de migrar a OLEDB. Otra vez, asumiendo que usas cosas del lado de MS o compatibles.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #5 (permalink)  
Antiguo 25/03/2008, 11:30
Avatar de Henki  
Fecha de Ingreso: febrero-2008
Mensajes: 74
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Problema para hacer un SELEC con campos de dos bases de datos

Cita:
Iniciado por Mithrandir Ver Mensaje
La nomenclatura que usas es correcta... al menos en términos de SQL Server, ya que ni por error mencionas qué manejador usas.

Ahora, usar ODBC a estas alturas me parece una barbaridad. Revisa la posibilidad de migrar a OLEDB. Otra vez, asumiendo que usas cosas del lado de MS o compatibles.
Si por mi dependiera, usaria MySQL, pero estoy obligado a usar SQL Server y ODBC, no es idea mia. Y dicho esto, comento un poco mejor el problema que tengo, a ver si alguien pudiera ayudarme.
Segun he encontrado, se puede acceder a dos bases de datos sin problema si ambas usan el mismo usuario y password. Si no fuera asi, como es mi caso, puedo acceder a una de las bases con una ODBC y desde esta hacer una vista a la otra, con lo que tendria acceso a sus campos. Pero no he conseguido averiguar como hacerlo, alguien sabe algo de este tema?
salu2 y muchas gracias
  #6 (permalink)  
Antiguo 04/04/2008, 12:17
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: Problema para hacer un SELEC con campos de dos bases de datos

Se puede, pero finalmente necesitas que el usuario que acceda al VIEW tenga acceso a la otra tabla en la base de datos[1].

Crear el VIEW es tan simple como:

CREATE VIEW dbo.mivista AS
SELECT * FROM otradb.dbo.mitabla

[1] Esto es necesario después de SP3. Sin embargo si tienes permisos de administrador puedes activar el Cross-Databse Ownership en cada una de las DB, lo que hará que no requieras de permisos en la tabla base (pero tiene implicaciones adicionales de seguridad, que fue precisamente lo que indujo el cambio en el service pack).
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #7 (permalink)  
Antiguo 05/04/2008, 05:19
Avatar de Henki  
Fecha de Ingreso: febrero-2008
Mensajes: 74
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Problema para hacer un SELEC con campos de dos bases de datos

pues asi lo consegui, gracias, aunque no he tenido el problema al no tener el sp3, que no sabia que existiera
salu2
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 18:15.