none
Cadena de conexion SQL Server 2012 RRS feed

  • Pregunta

  • Hola

    Solicito la ayuda para la conexion a SQL Server 2012 de una maquina Honeywell con Windows windows embedded; cada vez que intento hacer la coneccion me sale el siguiente error

    Cadena de conexion actual

    Public cn As New Data.SqlClient.SqlConnection("Data Source=IPSERVIDOR\INSTANCIA,1433;Initial Catalog=PROMEDIOS;Integrated Security=SSPI;User ID=XX;Password=XXXXX")

    {"Invalid connection."}

    {System.Data.SqlClient.SqlErrorCollection}

    14

    ConnectionOpen (Invalid Connection()).

    at System.Data.SqlClient.SqlConnection.OnError()
    at System.Data.SqlClient.SqlInternalConnection.OnError()
    at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
    at System.Data.SqlClient.TdsParser.Connect()
    at System.Data.SqlClient.SqlInternalConnection.OpenAndLogin()
    at System.Data.SqlClient.SqlInternalConnection..ctor()
    at System.Data.SqlClient.SqlConnection.Open()
    at CuartoFrioFE.frmEntradas.frmEntradas_Load()
    at System.Windows.Forms.Form.OnLoad()
    at System.Windows.Forms.Form._SetVisibleNotify()
    at System.Windows.Forms.Control.set_Visible()
    at System.Windows.Forms.Control.Show()
    at CuartoFrioFE.frmMenu.PictureBox1_Click()
    at System.Windows.Forms.Control.OnClick()
    at System.Windows.Forms.Control.WnProc()
    at System.Windows.Forms.Control._InternalWnProc()
    at Microsoft.AGL.Forms.EVL.EnterMainLoop()
    at System.Windows.Forms.Application.Run()
    at CuartoFrioFE.frmMenu.Main()

    Muchas gracias por su ayuda

    miércoles, 18 de noviembre de 2015 18:27

Respuestas

  • puede pasar que tu servidor no tenga conexiones remotas habilitadas, eso míralo en el propio server en configuration manager,

    Si las tienes habilitadas, puede ser que no tengas habilitada la seguridad por usuario y contraseña. Eso lo puedes hacer con management studio express desde el propio server y cambiar la configuración.


    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    jueves, 19 de noviembre de 2015 15:31
    Moderador
  • Raro si llegas, si fuera de un horario de trabajo es posible me gustaria tener una session remota por team viewer o skype para ver si podemos llegar a algo mas concreto.  
    viernes, 20 de noviembre de 2015 17:25

Todas las respuestas

  • Saludos

    Tu cadena de conexión esta mal pero veamos

    Data Source=IPSERVIDOR\INSTANCIA,1433;Initial Catalog=PROMEDIOS;Integrated Security=SSPI;User ID=XX;Password=XXXXX

    Aqui estas diciendo que es uns intacia nombrada y forzando el puerto por defecto a menos que no tengas otra instancia el puerto de una instancia nombrada es asignado de manera random

    Luego mencionas que es de seguridad integrada (windows)

    Pero estas mandando un id y password como si fuera autentificacion por sql.

    Si tienes el browser activo no necesitas especificar el puerto

    Data Source=IPSERVIDOR\INSTANCIA;Initial Catalog=PROMEDIOS;Integrated Security=SSPI;

    miércoles, 18 de noviembre de 2015 20:14
  • Muchas gracias por tu ayuda

    Modificando la cadena de conexión a: Data Source=IPSERVIDOR\INSTANCIA;Initial Catalog=PROMEDIOS;Integrated Security=SSPI

    Me genera la siguiente Exepcion

    {"Specified SQL server not found: 192.168.1.13\SQLEXPRESS"}

    {System.Data.SqlClient.SqlErrorCollection}

    "SqlException"

    6

    "ConnectionOpen (Connect())."

    ".Net SqlClient Data Provider"

    "at System.Data.SqlClient.SqlConnection.OnError()
    at System.Data.SqlClient.SqlInternalConnection.OnError()
    at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
    at System.Data.SqlClient.TdsParser.Connect()
    at System.Data.SqlClient.SqlInternalConnection.OpenAndLogin()
    at System.Data.SqlClient.SqlInternalConnection..ctor()
    at System.Data.SqlClient.SqlConnection.Open()
    at CuartoFrioFE.frmEntradas.frmEntradas_Load()
    at System.Windows.Forms.Form.OnLoad()
    at System.Windows.Forms.Form._SetVisibleNotify()
    at System.Windows.Forms.Control.set_Visible()
    at System.Windows.Forms.Control.Show()
    at CuartoFrioFE.frmMenu.PictureBox1_Click()
    at System.Windows.Forms.Control.OnClick()
    at System.Windows.Forms.Control.WnProc()
    at System.Windows.Forms.Control._InternalWnProc()
    at Microsoft.AGL.Forms.EVL.EnterMainLoop()
    at System.Windows.Forms.Application.Run()
    at CuartoFrioFE.frmMenu.Main()
    "

    Tengo otro dispositivo Honeywell con Windows CE Version  5.0 y la cadena de conexion inicial que te mostre funciona

    En el dispositivo Honeywell con Windows Embedded handheld 6.5 profesional es donde no me funciona

    El servidor solo tiene una instancia

    Saludos y muchas gracias


    miércoles, 18 de noviembre de 2015 21:08
  • Seguro que la conexion es por seguridad integrada?, si estas conectando por Windows CE mas siento que tu conexion seria de sql entonces usa algo como

    Data Source=IPSERVIDOR\INSTANCIA;Initial Catalog=PROMEDIOS;User ID=XX;Password=XXXXX

    miércoles, 18 de noviembre de 2015 21:22
  • Mira

    La siguiente cadena de conexion 

    Public cn As New Data.SqlClient.SqlConnection("Data Source=192.168.1.13\SQLEXPRESS;Initial Catalog=PROMEDIOS;User ID=xx;Password=xxxxxx")

    me genera la siguiente exepcion

    Tengo otro dispositivo Honeywell con Windows CE Version  5.0 y esta cadena de conexion funciona

    En el dispositivo Honeywell con Windows Embedded handheld 6.5 profesional es donde no me funciona

    Los dos dispositivos estan conectados por Wifi, tienen navegacion y desde el servidor responden ping

    No se controló System.Data.SqlClient.SqlException
      Class=20
      LineNumber=0
      Message="SqlException"
      Number=6
      Procedure="ConnectionOpen (Connect())."
      Server="192.168.1.13\SQLEXPRESS"
      Source=".Net SqlClient Data Provider"
      State=0
      StackTrace:
        at System.Data.SqlClient.SqlConnection.OnError()
        at System.Data.SqlClient.SqlInternalConnection.OnError()
        at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
        at System.Data.SqlClient.TdsParser.Connect()
        at System.Data.SqlClient.SqlInternalConnection.OpenAndLogin()
        at System.Data.SqlClient.SqlInternalConnection..ctor()
        at System.Data.SqlClient.SqlConnection.Open()
        at CuartoFrioFE.frmEntradas.frmEntradas_Load()
        at System.Windows.Forms.Form.OnLoad()
        at System.Windows.Forms.Form._SetVisibleNotify()
        at System.Windows.Forms.Control.set_Visible()
        at System.Windows.Forms.Control.Show()
        at CuartoFrioFE.frmMenu.PictureBox1_Click()
        at System.Windows.Forms.Control.OnClick()
        at System.Windows.Forms.Control.WnProc()
        at System.Windows.Forms.Control._InternalWnProc()
        at Microsoft.AGL.Forms.EVL.EnterMainLoop()
        at System.Windows.Forms.Application.Run()
        at CuartoFrioFE.frmMenu.Main()

    Saludos!!

    miércoles, 18 de noviembre de 2015 21:31
  • no se si tengas telnet o puedas bajar port forwarder en tu dispositivo ce que falla e intentar hacer un ping o llegar al puerto que tiene actualmente la instancia, es un poco dificil no he trabajado pero parece que algo anda mal configurado en esa maquina.  
    miércoles, 18 de noviembre de 2015 21:38
  • Voy  a probar y te cuento
    jueves, 19 de noviembre de 2015 0:56
  • puede pasar que tu servidor no tenga conexiones remotas habilitadas, eso míralo en el propio server en configuration manager,

    Si las tienes habilitadas, puede ser que no tengas habilitada la seguridad por usuario y contraseña. Eso lo puedes hacer con management studio express desde el propio server y cambiar la configuración.


    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    jueves, 19 de noviembre de 2015 15:31
    Moderador
  • No es eso Miguel, sino ambos de sus ambientes no se conectarian, por las pruebas que ha hecho esta usando auntentificación por sql server no por windows.   
    jueves, 19 de noviembre de 2015 19:52
  • Nuevamente muchas gracias por su ayuda

    ejecutando telnet en el dispositivo me muestra lo siguiente

    jueves, 19 de noviembre de 2015 20:24
  • Dispensa dia pesado

    Tienes que ver que puerto usa tu sql server, y hacer ping, esto lo puedes ver en el configuration managment de sql server donde lo tienes instalado.

    viernes, 20 de noviembre de 2015 5:44
  • El SQL tiene el puerto 1433, estan habilitadas las conexiones remotas, la autenticacion esta habilitada por Windows y Sql

    Adjunto muestra de un tracert desde la maquina

    viernes, 20 de noviembre de 2015 16:46
  • Saludos, esa herramienta no llega a puertos, usa port query esta puede checar los puertos.

    https://www.microsoft.com/en-us/download/details.aspx?id=24009

    viernes, 20 de noviembre de 2015 16:52
  • Esto es lo que me muestra

    =============================================

     Starting portqry.exe -n 192.168.1.13 -e 1433 -p TCP ...


    Querying target system called:

     192.168.1.13

    Attempting to resolve IP address to a name...


    IP address resolved to SVRFESMERALDA4

    querying...

    TCP port 1433 (ms-sql-s service): LISTENING
    portqry.exe -n 192.168.1.13 -e 1433 -p TCP exits with return code 0x00000000.

    viernes, 20 de noviembre de 2015 17:06

  • UDP port 1434 is LISTENING
    portqry.exe -n 192.168.1.13 -e 1434 -p UDP exits with return code 0x00000000.
    =============================================

     Starting portqry.exe -n 192.168.1.13 -e 1433 -p TCP ...


    Querying target system called:

     192.168.1.13

    Attempting to resolve IP address to a name...


    IP address resolved to SVRFESMERALDA4

    querying...

    TCP port 1433 (ms-sql-s service): LISTENING
    portqry.exe -n 192.168.1.13 -e 1433 -p TCP exits with return code 0x00000000.
    viernes, 20 de noviembre de 2015 17:07
  • Raro si llegas, si fuera de un horario de trabajo es posible me gustaria tener una session remota por team viewer o skype para ver si podemos llegar a algo mas concreto.  
    viernes, 20 de noviembre de 2015 17:25
  • Me avisas a que hora podrias

    Saludos!!

    viernes, 20 de noviembre de 2015 17:35