none
conexion a 2 bases de datos RRS feed

  • Pregunta

  • Hola tengo que hacer un Select sql con 2 tablas de bases de datos diferentes, tengo 2 conexiones:

    SqlConnection MiConexion = new SqlConnection(Settings.Default.B1_ETIQUETAS_ESConnectionString);

    SqlCommand cmd = new SqlCommand("Select Code .............tabla base de datos 2)

    como puedo hacer esto?

    tengo la otra conexion de la segunda tabla:

    Settings.Default.INTERMACHOConnectionString

    gracias.

    martes, 20 de junio de 2017 11:57

Todas las respuestas

  • Pues como haces para la tabla1 haz para la tabla2 sustituyendo ruta y cadena del select:

    SqlConnection MiConexion = new SqlConnection(Settings.Default.B1_ETIQUETAS_ESConnectionString);

    SqlCommand cmd = new SqlCommand("Select Code .............tabla base de datos 1)

    SqlConnection MiConexion2 = new SqlConnection(Settings.Default.INTERMACHOConnectionString);

    SqlCommand cmd2 = new SqlCommand("Select Campos .............tabla base de datos 2)



    Saludos, Javier J

    martes, 20 de junio de 2017 12:01
  • gracias pero la consulta seria con un mismo select
    martes, 20 de junio de 2017 12:25
  • Pues si el select puede ser el mismo (si el nombre de los campos y tablas coincide en ambas bases de datos) no tienes más que ponerlo en los 2 casos.

    SqlConnection MiConexion = new SqlConnection(Settings.Default.B1_ETIQUETAS_ESConnectionString);

    SqlCommand cmd = new SqlCommand("Select Code .............tabla base de datos)

    SqlConnection MiConexion2 = new SqlConnection(Settings.Default.INTERMACHOConnectionString);

    SqlCommand cmd2 = new SqlCommand("Select Code .............tabla base de datos)


    Saludos, Javier J

    • Propuesto como respuesta Javier Jiménez miércoles, 21 de junio de 2017 12:23
    martes, 20 de junio de 2017 12:30
  • Saludos EquipoC,

    Lo que explica javier, es que hagas el mismo procedimiento de la consulta y crearas una variable SqlConection para cada instancias a la base de datos, en tu caso serian 2.


    Si mi respuesta te ha ayudado a resolver tus problemas, Selecciona "Proponer como respuesta"

    Blog
    J.Joaquin

    martes, 20 de junio de 2017 12:32
  • ok entiendo lo que explica javier, pero lo que yo quiero es una sóla variable para las 2 instancias.

    saludos.

    martes, 20 de junio de 2017 12:51
  • pudieras realizar un procedimiento almacenado en el sql con la consulta hacia las dos bases de datos y el resultado

    enviarlo hacia la aplicacion

    la consulta :

    SELECT * FROM base1.esquema1.tabla1 as t1

       INNER JOIN base2.esquema2.tabla2 as t2

       ON t1.CampoClave=t2.CampoClave

     y asi te evitas del problema de las conexiones en el codebehind.


    martes, 20 de junio de 2017 13:01
  • ok gracias lo tendré en cuenta
    martes, 20 de junio de 2017 14:22