SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: Vortice en Jueves 28 de Agosto de 2008, 22:05

Título: Problema While...
Publicado por: Vortice en Jueves 28 de Agosto de 2008, 22:05
Camaradas 1ro decirles muy buenos dias..a lo nuestro..

resulta q tengo un trozo de codigo q no hace lo q le digo  :angry: les muestro el dichoso codigo...

objconexion.conectar_bd()
strSQL = "SELECT idUbicacion FROM RelacionUbicacionEntidad WHERE RutAlumno = " & Rut & ""
Dim Comando As New SqlCommand(strSQL, objconexion.Conexion)
Dim Leer As SqlDataReader = Comando.ExecuteReader
While Leer.Read
       IdRelUbi = CStr(Leer.GetValue(0))
End While
Leer.Close()

Pasa q no entra al While siendo q esa query la he probado en sql y funciona si me da resultado y lo mas raro es q ese mismo procedimiento lo hago en otros forms y lo hace bien... :(
Ojala alguno de ustedes Masters pueda ayudarme...

desde ya gracias.
Título: Re: Problema While...
Publicado por: Vortice en Jueves 28 de Agosto de 2008, 22:30
Lo otro aprovechando el hilo, como puedo hacer para saber el valor q obtienen las Variables strSQL y Leer ?
al recorrer el codigo me dice q strSQl contiene el string q aparece entre comillas (query)
y Leer lo mismo, tbn intente tirar Leer en un msgbox y me dice q "Prompt no se puede convertir en String"

Gracias
Título: Re: Problema While...
Publicado por: lato en Jueves 28 de Agosto de 2008, 22:38
Si no entra en el bucle es que Leer.Read = False... pero comentas que la consulta es correcta...

1. Tienes algún control de errores que "camufle" un error en Comando.ExecuteReader?
2. La variable Rut tiene un valor correcto?
Título: Re: Problema While...
Publicado por: Vortice en Jueves 28 de Agosto de 2008, 22:42
La variable Rut SI tiene un valor correcto
y no me da error solo q no entra al While por consiguiente el error me lo da en la consulta q hago despues con el valor q quiero obtener en IdRelUbi, ya que, esta Variable al no entrar el foco en el While no procesa y queda en 0.
Título: Re: Problema While...
Publicado por: lato en Jueves 28 de Agosto de 2008, 23:00
Pues...
Si no entra en el While es que el DataReader no tiene datos, la consulta no ha devuelto datos, pero ya has comentado que la has probado y si devuelve registros...

Si la conexión a la base de datos es correcta, y la consulta debe devolver datos porque los hay... ahora mismo no se me ocurre nada... pero le daré vueltas al tema a ver si se me ocurre algo...

Puedes comprobar si el datareader tiene filas con Leer.HasRows, a ver que te devuelve
Título: Re: Problema While...
Publicado por: Vortice en Jueves 28 de Agosto de 2008, 23:07
Lato, gracias por responder...
y como tu dices el DataReader no tiene datos por q el Leer.HasRows me devuelve 0, a ver q se nos ocurre por q deberia devolver datos..por q en sql lo hace  :(

de antemano gracias
Título: Re: Problema While...
Publicado por: Vortice en Lunes 1 de Septiembre de 2008, 18:35
Camaradas, solucione mi problema, jejejeje, para variar no era un problema del codigo, el codigo esta bien, era un problema con la BD, gracias a todos.
Título: Re: Problema While...
Publicado por: lato en Lunes 1 de Septiembre de 2008, 18:43
Si que era raro sí.

Me alegra saber que lo has resuelto y gracias por avisarnos jajaja

Un saludo.