2012-04-19 37 views
6

Vamos de un servidor SQL-Server 2008 a un back-end MySQL. ¿Cuál es la interoperabilidad entre SQL-Server y MySQL?SQL-Server y MySQL interoperabilidad?

¿Seremos capaces de ejecutar consultas SQL que hagan referencia a tablas de bases de datos en todos los servidores?

Por ejemplo, es posible: seudo código

SELECT * 
FROM 
     [SQL2008Server].[databaseA].[DBO].[table1] as t1 
    INNER JOIN 
     [MySQLServer].[databaseB].[dbo].[table2] as t2 
      ON t1.id = t2.fkid 

Si no es así, ¿qué opciones se puede recomendar para la integración de datos a través de SQL Server 2008 y MySQL?

¿Sería LINQ proporcionar algún alivio en lo que respecta a la combinación de datos de SQL-Server y MySQL?

Respuesta

8

Es posible agregar un servidor MySQL en SQL Server como un servidor vinculado.

Una vez que haya configurarlo puede consultar utilizando OPENQUERY como esto:

SELECT t1.colA, t2.colB 
FROM SQLdbName.dbo.tablename AS t1 
INNER JOIN OPENQUERY(MySQLlinkedservername, 
        'SELECT colA, colB FROM tablename') AS t2 
ON t1.colA = t2.colA 
+0

Marcos ... gracias! ¡Eso era exactamente lo que estaba buscando! ¡Esto funcionó maravillosamente! Los ejemplos sql en el tut eran un poco inseguros. Por lo tanto, para cualquier persona que lo busque, hay un ejemplo sql JOIN entre nuestro SQL2008Server y MySQLServer: SELECCIONE t1.colA, t2.colB FROM SQLdbName.dbo.tablename como t1 OPCIÓN DE JUNTA INTERNA (MySQLlinkedservername, 'SELECT colA, colB FROM tablename') como t2 ON t1.colA = t2.colA – s15199d

+0

@ s15199d: Gracias por el comentario. Puse tu SQL del comentario en mi respuesta para que sea más fácil de leer para otros. Espero que esté bien. –

Cuestiones relacionadas