Contar el número de registros de un Recordset

25/09/2003 - 18:35 por Iván | Informe spam
Hola,

¿Cuál sería la mejor forma de contar los registros de un Recordset? Yo lo
hago haciendo un bucle mientras no sea EOF y un contador, pero me imagino
que habrá alguna forma mejor. He probado con GetRecordCount() pero ya me he
fijado que no funciona precisamente para eso.

Gracias de antemano.

Iván.

Preguntas similare

Leer las respuestas

#1 Rodrigo Corral González
25/09/2003 - 21:04 | Informe spam
Tienes 2 opciones mucho mejores que eso que haces:

1) Utilizar cursores de cliente y la propiedad RecordCount del recordset
2) Consultar a la base de datos con una consulta SELECT COUNT(*)

Un saludo
Rodrigo Corral González
Respuesta Responder a este mensaje
#2 Iván
26/09/2003 - 10:16 | Informe spam
Gracias Rodrigo por tu respuesta. Entiendo lo que me dices pero no sé como
escribirlo en código. Si partimos del siguiente código:

try
{
CDaoDatabase db;
db.Open("C:\\BD\\Agenda97.mdb");
CDaoRecordset rsContar(&db);
rsContar.Open(AFX_DAO_USE_DEFAULT_TYPE, "SELECT COUNT(*) FROM Agenda");
}catch(CDaoException *e)
{
AfxMessageBox(e->m_pErrorInfo->m_strDescription);
e->Delete();
}

m_NumRegistros=??????? ¿Cómo digo que la variable UINT m_NumRegistros coja
el valor de la consulta SQL.

Saludos,

Iván.

PD: Lo de los cursores cliente ni idea. Pero bueno ya buscaré algo de
información antes de preguntar.


"Rodrigo Corral González" escribió en el mensaje
news:
Tienes 2 opciones mucho mejores que eso que haces:

1) Utilizar cursores de cliente y la propiedad RecordCount del recordset
2) Consultar a la base de datos con una consulta SELECT COUNT(*)

Un saludo
Rodrigo Corral González


Respuesta Responder a este mensaje
#3 Willser F.
26/09/2003 - 23:30 | Informe spam
Puedes hacer un MoveLast() y luego llamar a GetRecordCount(); Si desea
reflejar cambios, es necesario hacer un Requery() antes del MoveLast(). Si
necesita el primer registro por defecto, entonces se haría un MoveFirst().
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida