Error de conexión SQL

15/05/2006 - 17:56 por Martin Garmendia | Informe spam
Hola,
Estoy intentando hacer un programa que cada vez que tiene que hacer
cualquier operación contra la base de datos verifique que la conexión es
válida. Para comprobarlo detengo el servicio de sql server y lo vuelvo a
iniciar. He intentado comprobar el estado de la conexión con
"connection.state", pero ha sido inutil pq el estado era siempre open, pero
luego cascaba. Cascaba incluso aunque la cerrara y la volviera abrir. Al
final he decidido hacer una conexión nueva cada vez que tenga que hacer una
operación contra la BBDD. Pero me sigue cascando.
El código es el siguiente:

''pongo el valor de la conexión a nothing y llamo a una función que me da
una conexión nueva
...

''La vble conn es global

conn = Nothing

iniSQL(excepcion)

..
Public Function iniSQL(ByRef excepcion As String) As Boolean

Try

conn = New System.Data.SqlClient.SqlConnection(GetConStr())

''loggear("conexion inicio" + Date.Now.Ticks.ToString)

conn.Open()

''loggear("conexion fin" + Date.Now.Ticks.ToString)

excepcion = ""

Return True

Catch ex As Exception

excepcion = ex.Message

Return False

End Try

End Function

________________________________________________________________________

Una vez tengo la conexión cualquier operación contra la bbdd casca.

Esto pasa solo cuando paro y reinicio el servicio de SQL Server. Si no, el
código funciona perfectamente.
 

Leer las respuestas

#1 Martin Garmendia
16/05/2006 - 12:11 | Informe spam
Ya he solucionado el problem desactivando el pooling en la conexión.
Poniendo "POOLINGúLSE" al final del string de conexión.

"Martin Garmendia" escribió en el mensaje
news:
Hola,
Estoy intentando hacer un programa que cada vez que tiene que hacer
cualquier operación contra la base de datos verifique que la conexión es
válida. Para comprobarlo detengo el servicio de sql server y lo vuelvo a
iniciar. He intentado comprobar el estado de la conexión con
"connection.state", pero ha sido inutil pq el estado era siempre open,
pero luego cascaba. Cascaba incluso aunque la cerrara y la volviera abrir.
Al final he decidido hacer una conexión nueva cada vez que tenga que hacer
una operación contra la BBDD. Pero me sigue cascando.
El código es el siguiente:

''pongo el valor de la conexión a nothing y llamo a una función que me da
una conexión nueva
...

''La vble conn es global

conn = Nothing

iniSQL(excepcion)

..
Public Function iniSQL(ByRef excepcion As String) As Boolean

Try

conn = New System.Data.SqlClient.SqlConnection(GetConStr())

''loggear("conexion inicio" + Date.Now.Ticks.ToString)

conn.Open()

''loggear("conexion fin" + Date.Now.Ticks.ToString)

excepcion = ""

Return True

Catch ex As Exception

excepcion = ex.Message

Return False

End Try

End Function

________________________________________________________________________

Una vez tengo la conexión cualquier operación contra la bbdd casca.

Esto pasa solo cuando paro y reinicio el servicio de SQL Server. Si no, el
código funciona perfectamente.




Preguntas similares