none
La Aplicación no conecta con la Base de Datos mdf RRS feed

  • Pregunta

  • Buenos días,

    Para empezar soy principiante en programación con C#. He hecho una aplicación con una base de datos (mdf) adjunta o creada desde VS2015. Cuando empaqueto e instalo en mi PC va todo perfecto, pero cuando la instalo en otro PC no accede a los datos. Mi PC tiene instalado Windows 10 64 bits. El PC donde lo quiero instalar tiene Windows 10 32 bits. Me pueden aportar una ayuda?.

    Gracias,

    Jesús

    martes, 13 de septiembre de 2016 13:10

Respuestas

  • Jesús2101,

    Las credenciales de autenticación que defines en la cadena de conexión deben de ser adecuadas para lograr conexión con la base de datos de la instancia especificada, ¿has probado conectarte mediante la autenticación de windows?

    Server=(localdb)\MyInstance; Integrated Security=true; Database=dbName;


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    martes, 13 de septiembre de 2016 21:11

Todas las respuestas

  • Hola.

    Y, en la PC destino, la que tiene Windows 10 32 bits, ¿instalaste el SQL Server, misma versión o superior, que la que tienes en tu ambiente de desarrollo?

    Saludos,


    Guillermo Taylor F.
    MVP Data Platform & IT Pro
    Mi Blog

    martes, 13 de septiembre de 2016 17:22
  • Jesús2101,

    ¿El servidor de base de datos estará centralizado en algún equipo? ¿La PC sobre la que instalas la aplicación accederá a los datos de manera local?

    Lo primero es validar que la cadena de conexión apunte al servidor de datos correcto (sea local o remoto), y claro, si accedes a los datos de manera local es de esperar que tengas instalado como mínimo el motor de base de datos en el equipo.

    Finalmente, mencionas que no accede a los datos, ¿obtienes algún mensaje acerca de la excepción producida? ¿algo que nos permita entender o suponer lo que sucede?


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    martes, 13 de septiembre de 2016 17:25
  • Saludos

    Por pura curiosidad que version de sql server estas usando? 2016 no existe para 32 bits.  

    martes, 13 de septiembre de 2016 19:09
  • Hola Guillermo,

    si tiene la misma versión.

    Saludos,

    martes, 13 de septiembre de 2016 19:14
  • Saludos

    Te da algun problema en especifico? si es asi lo podrias compartir por favor.

    martes, 13 de septiembre de 2016 19:17
  • Hola Willams,

    la cadena de conexión apunta al servidor de datos local en este caso.

    El mensaje que me sale es que no es correcto ni el usuario o la contraseña (mensaje de la aplicación), de acceso a la aplicación.

    ** El mensaje me sale al introducir el Usuario y Contraseña a través de un Formulario Login.

    Saludos,

    martes, 13 de septiembre de 2016 19:22
  • Hola Enrique,

    Esta es la info del PC de 64bit el de 32 no lo tango a mano ahora mismo.

    Microsoft SQL Server Management Studio                        12.0.2269.0
    Herramientas cliente de Microsoft Analysis Services                        12.0.2000.8
    Microsoft Data Access Components (MDAC)                        10.0.14393.0
    Microsoft MSXML                        3.0 4.0 6.0
    Microsoft Internet Explorer                        9.11.14393.0
    Microsoft .NET Framework                        4.0.30319.42000
    Sistema operativo                        6.3.14393

    martes, 13 de septiembre de 2016 19:30
  • Saludos

    Creaste el mismo usuario o usas usuario de windows o de sql server para tu base de datos?.  

    martes, 13 de septiembre de 2016 19:48
  • Jesús2101,

    Las credenciales de autenticación que defines en la cadena de conexión deben de ser adecuadas para lograr conexión con la base de datos de la instancia especificada, ¿has probado conectarte mediante la autenticación de windows?

    Server=(localdb)\MyInstance; Integrated Security=true; Database=dbName;


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    martes, 13 de septiembre de 2016 21:11
  • hola

    >>He hecho una aplicación con una base de datos (mdf) adjunta o creada desde VS2015

    entiendo que el .mdf esta junto al .exe

    en ese caso el servicio de sql server lo instalas en la pc del usuario, no?

    porque el attach dinamico requiere del motor de sql server en la pc local para que se adjunte dinamicamente

    >>pero cuando la instalo en otro PC no accede a los datos

    que mensaje de error recibes ?

    validas que el servicio de sql server este iniciado?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 13 de septiembre de 2016 21:34
  • Uso usuario de windows

    martes, 13 de septiembre de 2016 21:38
  • Hola leandro,

    El .mdf está en la carpeta Database. Te paso como tengo la cadena de conexión:

            public static DataSet Ejecutar(string cmd)
            {
                SqlConnection Con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;

    AttachDbFilename=|DataDirectory|\Database\BDGestionObras.mdf;Integrated Security=True;Connect Timeout=30");
                Con.Open();

                DataSet DS = new DataSet();
                SqlDataAdapter DP = new SqlDataAdapter(cmd, Con);
                DP.Fill(DS);

                Con.Close();

                return DS;

            }

    ** Si he comprobado el servicio de sql server y está iniciado.

    martes, 13 de septiembre de 2016 21:45
  • Si Leandro. En el otro PC también está instalado el SQL Server.

    Saludos,

    martes, 13 de septiembre de 2016 21:48
  • Me surje una pregunta...... yo introducí en un registro de tabla de la base de datos, (TblUsuarios), para que en el momento de arranque de la aplicación pudiera entrar con ese usuario. Me pregunta es:

    al empaquetar la base de datos con la aplicación, guarda ese registro que introduje, o la deja en blanco?

    Saludos,

    martes, 13 de septiembre de 2016 21:58