none
Modificar la Cadena de Conexion a los datos RRS feed

  • Pregunta

  • Hola,

    llevo varios días intentando conseguir esto.

    Estoy usando Visual Basic de Visual Studio 2005 Professional.


    Necesitaba realizar una aplicación con acceso a datos de una forma rápida y sencilla, por lo tanto use el asistente de Visual Studio para crear el enlace y así tener acceso a los datos. Esto me genero una variable llamada "DataConnectionString", además del dataset y datatables necesarios, puedo acceder a su valor entrando a la configuración del Proyecto (Desde las propiedades del proyecto).

    Si yo quiero acceder al valor de esa variable desde código me basta con escribir "My.Settings.DataConnectionString".

    Bien, el problema surge ahora, el cliente me ha dicho que los datos pueden estar en otro sitio, distinto al de la ubicación de la aplicación (como es lógico),

    como no quiero modificar toda mi aplicación, (dataset, etc...), me he dado cuenta que lo más rápido para esto seria modificar dicha cadena de conexión "DataConnectionString", pero no consigo dar con la solución.

    ¿Alguien podria hecharme un cable?.

    Muchas grácias, os lo agradezco.

    Saludos...

     

    jueves, 27 de marzo de 2008 17:54

Respuestas

  • "MPedrero" escribió:

    > Si yo quiero acceder al valor de esa variable desde código me
    > basta con escribir "My.Settings.DataConnectionString".
    >
    > Bien, el problema surge ahora, el cliente me ha dicho que los
    > datos pueden estar en otro sitio, distinto al de la ubicación
    > de la aplicación (como es lógico),
    >
    > como no quiero modificar toda mi aplicación, (dataset, etc...),
    > me he dado cuenta que lo más rápido para esto seria modificar
    > dicha cadena de conexión "DataConnectionString", pero no consigo
    > dar con la solución.
    >
    > ¿Alguien podria hecharme un cable?.

    Hola:

    Esa cadena de conexión que te ha generado el Asistente, es de SÓLO LECTURA, por lo cual, no podrás modificarla durante la ejecución de tu aplicación. Pero ello no implica que en tiempo de ejecución le puedas asignar otra cadena de conexión al objeto Connection del adaptador de datos subyacente existente en un objeto TableAdapter.

    Cuando desees recuperar los datos, ejecutarías lo siguiente:

            ' Especificamos la nueva cadena de conexión
            '
            Dim connString As String = _
                "Provider=Microsoft.ACE.OLEDB.12.0;" & _
                "Data Source=C:\Mis documentos\Database1.accdb"

            ' Se la asignamos a la propiedad ConnectionString del objeto
            ' Connection del adaptador de datos.
            '
            Me.NombreTableAdapter.Connection.ConnectionString = connString

            ' Obtenemos los datos.
            '
            Me.NombreTableAdapter.Fill(Me.NombreDataSet.NombreTabla)

    Se comprende que estamos hablando de la misma base de datos que puede encontrarse en diferentes carpetas.

    Un saludo

     


    Enrique Martínez
      [MS MVP - VB]

    domingo, 5 de junio de 2011 18:28
    Moderador