Visual Basic - como saber...

Life is soft - evento anual de software empresarial
 
Vista:

como saber...

Publicado por Isa (45 intervenciones) el 04/07/2007 10:06:19
Hola a todos!
Deseo redimensionar un array con el numero de elementos de una consulta realizada, es decir, si la consulta es Select * from Dolencias, quiero saber cual es el numero total de dolencias que hay en la BD. Para ello he utilizado el recordcount del recordset, pero me sale la cantidad de -1... y no se como hacerlo...

Muchas gracias por su ayuda!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:como saber...

Publicado por fernando (102 intervenciones) el 04/07/2007 11:46:49
SELECT COUNT(*) FROM Dolencias

devuelve la cantidad de filas de la tabla dolencias(no devuelve registros de la tabla)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:como saber...

Publicado por Yo (38 intervenciones) el 04/07/2007 16:06:02
Además de la manera en que te indica Fernando, también podrías cambiar el tipo de cursor de tu recordset (seguramente estás usando adUseServer); usa en la propiedad "CursorLocation" el valor "adUseClient"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:como saber...

Publicado por Matías Freire (421 intervenciones) el 04/07/2007 21:30:06
Lo que te indica YO es correcto, pero si estas trabajando con una base de Access podés tener problemas con el cursor en el cliente si tu tabla tiene mpas de 35000 registros. Si no tiene (o no va a tener) esa cantidad de registros, usa tranquilamente el valor "adUseClient". Si sabes que puede llegara a ese valor, te recomiendo que una vez que obtengas el recordset , hagas lo siguiente antes de querer leer la propiedad RecordCount:

If Not rst.Eof Then
rst.MoveLast
rst.MoveFirst
End If

Esto hará avanzar el cursor hasta el final del recordset, y luego al inicio nuevamente. De esta forma, la propiedad RecordCount te devolverá correctamente la cantidad de registros.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar