CRecordset::Move

virtual void Mover ( largo nRows, palabra wFetchType = SQL_FETCH_RELATIVE);
tirar ( CDBException, CMemoryException );

Parámetros

nRows

El número de filas para seguir adelante o hacia atrás. Los valores positivos mueven hacia adelante, hacia el final del juego de registros. Los valores negativos hacia atrás, hacia el principio.

wFetchType

Determina el conjunto de filas que mueva va recuperar. Para obtener más información, vea la sección Comentarios.

Observaciones

Llame a esta función miembro para mover el puntero del registro actual en el conjunto de registros, hacia delante o hacia atrás. Si se pasa un valor de 0 para nRows, Mover actualiza el registro actual; Mover terminará cualquier modo AddNew o Editar actual y restaurará el valor del registro actual antes de AddNew o Editar fue llamado.

&Notanbsp;  Cuando se mueve a través de un conjunto de registros, registros eliminados no pueden omitirse. Consulte la función de miembro de IsDeleted para obtener más detalles.

Mover recoloca el juego de registros por filas. Basado en los valores de nRows y wFetchType, Mover obtiene el conjunto de filas apropiada y luego hace el primer registro en ese conjunto de filas del registro actual. Si no han aplicado la obtención masiva de filas, entonces el tamaño del conjunto de filas es siempre 1. Al recuperar un conjunto de filas, Mover directamente llama a la función de miembro de CheckRowsetError para controlar los errores derivados de la recuperación.

Dependiendo de los valores que se pasan, Mover es equivalente a otras funciones de miembro CRecordset . En particular, el valor de wFetchType puede indicar una función miembro que es más intuitiva y a menudo el método preferido para mover el registro actual.

La tabla siguiente muestran los valores posibles de wFetchType, el conjunto de filas que mueva va recuperar basado en cualquier función de miembros equivalentes correspondientes a wFetchType , wFetchType y nRows.

wFetchType Conjunto de filas obtenida Función miembro equivalente
SQL_FETCH_RELATIVE (el valor predeterminado) El conjunto de filas desde la primera fila del conjunto de filas actual filas nRows.
SQL_FETCH_NEXT El siguiente conjunto de filas; nRows se omite. MoveNext
SQL_FETCH_PRIOR El conjunto de filas anterior; nRows se omite. MovePrev
SQL_FETCH_FIRST El primer conjunto de filas en el conjunto de registros; nRows se omite. MoveFirst
SQL_FETCH_LAST La última filas completa del conjunto de registros; nRows se omite. MoveLast
SQL_FETCH_ABSOLUTE Si nRows gt; 0, el conjunto de filas nRows filas a partir del comienzo del juego de registros. Si nRows < 0, el conjunto de filas empezando nRows fila desde el final del recordset. Si nRows = 0, entonces se devuelve una condición de inicio del archivo (BOF). SetAbsolutePosition
SQL_FETCH_BOOKMARK El conjunto de filas empezando por la fila cuyo valor de marcador corresponde a nRows. SetBookmark

&Notanbsp;  Para conjuntos de registros sólo adelante, Mover sólo es válido con un valor de SQL_FETCH_NEXT para wFetchType.

Precaució&nnbsp;  Llamar a Mover produce una excepción si el juego de registros no tiene ningún registro. Para determinar si el juego de registros tiene ningún registro, llame a IsBOF y IsEOF.

Si se ha desplazado del pasado al principio o al final del objeto recordset (IsBOF o IsEOF devuelve cero), llama a una función Mover posiblemente generará una CDBException. Por ejemplo, si IsEOF devuelve cero y IsBOF no lo hace, entonces MoveNext producirá una excepción, pero MovePrev no.

Si se llama Mover mientras el registro actual está siendo actualizado o añadido, las actualizaciones se pierden sin previo aviso.

Para obtener más información acerca de navegación de juego de registros, vea los artículos Recordset: desplazamiento (ODBC) y Recordset: marcadores y posiciones absolutas (ODBC) en la Guía del programador de Visual C++. Para obtener más información sobre la obtención masiva de filas, vea el artículo conjunto de registros: obtener registros en masiva (ODBC) en la Guía del programador de Visual C++. Para obtener información relacionada, vea la función de la API de ODBC SQLExtendedFetch en la referencia del programador del SDK de ODBC.

Ejemplo

/ / rs es un CRecordset o un / / derivada de CRecordset objeto

/ / Cambiar el tamaño de filas a 5
RS.SetRowsetSize (5);

/ / Desplazarse al primer registro
y en el conjunto de registros
RS.MoveFirst (de);

/ / Hacia el sexto registro
RS.Mover (5);
/ / Otras formas equivalentes a
/ / hacia el sexto registro:
/ / rs.Mover (6, SQL_FETCH_ABSOLUTE);
/ / rs.SetAbsolutePosition (6);
Y en este caso, es el sexto registro
/ / el primer registro en el siguiente conjunto de filas
/ / para los siguientes también son equivalentes:
/ / rs.Mover (1, SQL_FETCH_NEXT);
/ / rs.MoveNext)

Visió&n General de CRecordset |nbsp; Miembros de clase | Diagrama de jerarquía

Vea tambiénnbsp;CRecordset::Move&Next, CRecordset::MovePrev, CRecordset::MoveFirst, CRecordset::MoveLast, CRecordset::SetAbsolutePosition, CRecordset::SetBookmark, CRecordset::IsBOF, CRecordset::IsEOF, CRecordset::CheckRowsetError

Index