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

Acceso bases de datos externas dentro del mismo servidor de SQL Server 2000

Estas en el tema de Acceso bases de datos externas dentro del mismo servidor de SQL Server 2000 en el foro de SQL Server en Foros del Web. ¿Cómo puedo, a través de una instrucción SQL, referenciar a tablas de una base de datos distinta de la que esté usando (¿externa?)? He buscado ...
  #1 (permalink)  
Antiguo 02/11/2005, 10:06
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 2 meses
Puntos: 6
Acceso bases de datos externas dentro del mismo servidor de SQL Server 2000

¿Cómo puedo, a través de una instrucción SQL, referenciar a tablas de una base de datos distinta de la que esté usando (¿externa?)?

He buscado por ahí y he visto algo de usar "IN", pero no sé si esta es la forma con SQL Server, ni qué se pondría exactamente.

Me refiero a esto:

FROM Tabla IN '[dBASE IV; DATABASE=C:\DBASE\DATOS\VENTAS;]';
  #2 (permalink)  
Antiguo 03/11/2005, 11:28
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
checa en la ayuda de SQL...

tal vez te sean utiles las instrucciones
OPENROWSET y OPENQUERY...

puedes acceder a bases de datos ya sea por medio de ODBC o bien con su controlador OLE DB... estas instrucciones te devuelven la consulta que envies en SQL al proveedor... solo verifica la sintaxis...

  #3 (permalink)  
Antiguo 06/11/2005, 20:20
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 2 meses
Puntos: 6
Hmmm, no te he entendido bien, y tal vez yo no me expresé bien, así que lo repito (aunque también miraré lo que me has dicho):

Lo que yo quiero es saber si puedo, desde la propia instrucción SQL (estoy con SQL Server 2000), acceder a datos de tablas de otras bases de datos (pero dentro del mismo servidor SQL Server), PERO, y esto es importante, sin necesidad de cambiar desde ASP el servidor (sino que en una misma consulta de SQL acceda a cosas de distintas bases de datos).

Saludos
  #4 (permalink)  
Antiguo 07/11/2005, 07:42
 
Fecha de Ingreso: noviembre-2005
Mensajes: 658
Antigüedad: 18 años, 5 meses
Puntos: 3
Revisa este link, te puede aclarar el asunto

http://www.maestrosdelweb.com/editorial/tutsql13/
  #5 (permalink)  
Antiguo 07/11/2005, 15:26
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 2 meses
Puntos: 6
Cita:
Iniciado por monkyta
Revisa este link, te puede aclarar el asunto

http://www.maestrosdelweb.com/editorial/tutsql13/
Sí, gracias; ya vi cosas como esa como señalé en mi mensaje inicial. De todos esos procedimientos, ¿cuál es el apropiado para SQL Server 2000? ¿Alguien podría ponerme una sentencia de ejemplo para este gestor de bases de datos?
  #6 (permalink)  
Antiguo 07/11/2005, 17:37
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Si es otro servidor de SQL Server revisa la manera de hacer Linked Servers, de esa manera accedes con algo del tipo:

SELECT * FROM servidor.mibase.dbo.tabla
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #7 (permalink)  
Antiguo 07/11/2005, 19:39
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 2 meses
Puntos: 6
Cita:
Iniciado por Mithrandir
Si es otro servidor de SQL Server revisa la manera de hacer Linked Servers, de esa manera accedes con algo del tipo:

SELECT * FROM servidor.mibase.dbo.tabla
Ok, gracias. Es de un mismo servidor, pero de distinta base de datos, así que supongo que será aplicar directamente la sentencia que has puesto.
  #8 (permalink)  
Antiguo 09/11/2005, 12:41
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Si es el mismo servidor basta utilizar:

SELECT * FROM mibase.dbo.tabla

__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #9 (permalink)  
Antiguo 09/11/2005, 22:12
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 2 meses
Puntos: 6
Sí, ya lo probé así porque ya lo supuse, gracias. De hecho, poniendo el nombre del servidor, que es 'local' (o ese nombre le veo yo), no me iba (probé a ponerlo con paréntesis, sin paréntesis, con paréntesis y entre corchetes...).

Me decía que no podía encontrar el servidor. Por la información de error que da, me da que para ver qué nombre de servidor le da el sistema podría consultar sysservers.
  #10 (permalink)  
Antiguo 11/11/2005, 15:53
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
PRINT @@servername

Eso te dará el nombre de tu servidor
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #11 (permalink)  
Antiguo 13/11/2005, 15:59
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 2 meses
Puntos: 6
Ok, muy útil, gracias. Me ha dado el nombre del servidor, que coincide con el del ordenador.

Saludos
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:26.