Notas .NET

Thursday, August 10, 2006


¿Cómo vincular dos BD's en una sentencia SQL?


En términos sencillos, la idea aquí es juntar en una sola sentencia dos tablas que pertenezcan a distintas bases de datos SQL.

Algunas veces requerimos accesar a dos bases de datos para obtener cierta información. Por ejemplo, supongamos que en una BD tenemos los datos personales de todos los clientes y queremos "pegarle" a esta información otro dato existente en otra BD. Este dato podría ser, por ejemplo, cuánto ha consumido de nuestros productos. De ese modo tenemos algo así:


SELECT * FROM BdPrincipal..Clientes
INNER JOIN BdDetalles..Consumos
ON (BdPrincipal..Clientes.IdCliente = BdDetalles..Consumos.IdCliente)


Ambas bases deberán estar funcionando bajo el mismo lenguaje, de otro modo nuestra sentencia será algo como:


SELECT * FROM BdPrincipal..Clientes
INNER JOIN BdDetalles..Consumos
ON (
BdPrincipal..Clientes.IdCliente COLLATE SQL_Latin1_General_CP1253_CS_AS
=
BdDetalles..Consumos.IdCliente COLLATE SQL_Latin1_General_CP1253_CS_AS
)


El idioma lo podemos verificar en la configuración de cada base (SQL Manager)

0 Comments:

Post a Comment

<< Home