CRecordset::Move

wirtualne nieważne Przenieść ( długą nRows, program WORD wFetchType = SQL_FETCH_RELATIVE);
rzut ( CDBException, CMemoryException );

Parametry

nRows

Liczba wierszy, aby przechodzić do przodu lub do tyłu. Wartości dodatnie przesuwają się naprzód, pod koniec zestawu rekordów. Wartości ujemne wstecz, przesunie się w kierunku początku.

wFetchType

Określa zestaw wierszy, aby przenieść będzie pobrania. Aby uzyskać szczegółowe informacje zobacz uwagi.

Uwagi

Wywołanie tej funkcji członek się bieżący wskaźnik rekordu w zestawie rekordów, przodu lub do tyłu. Jeśli możesz przekazać wartość 0 dla nRows, przenieść Odświeża bieżący rekord; Przenieść zakończy się bieżący tryb AddNew lub edytować , a będzie przywrócić wartość bieżącego rekordu przed AddNew lub Edycja została wywołana.

Uwaga   Podczas przenoszenia przez zestaw rekordów, usuniętych rekordów nie mogą być pominięte. Zobacz opis funkcji członek IsDeleted szczegóły.

Przenieść Zmiana zestawu rekordów przez zestawów wierszy. W oparciu o wartości nRows i wFetchType, przenieść pobiera odpowiednie wierszy i następnie dokonuje pierwszego rekordu w tym wierszy bieżącego rekordu. Jeśli nie zaimplementowano Pobieranie wiersza luzem, następnie rozmiar zestawu wierszy jest zawsze 1. Kiedy pobieranie zestawu wierszy, bezpośrednio przenieść wywołuje funkcję Państwa CheckRowsetError do obsługi błędów wynikających z pobieraniem.

W zależności od wartości, które należy przekazać przenieść jest równoważna do innych funkcji CRecordset . W szczególności wartość wFetchType może wskazywać funkcji członek, który jest bardziej intuicyjna i często preferowaną metodą przenoszenia w bieżącym rekordzie.

W poniższej tabeli przedstawiono możliwe wartości wFetchType, wierszy, aby przenieść spowoduje pobranie opartych na wFetchType i nRowsoraz wszelkich funkcji równoważne Członkowskich odpowiadające wFetchType.

wFetchType Pobranemu wierszy Członkowskie równoważnych funkcji
SQL_FETCH_RELATIVE (wartość domyślna) Zestaw wierszy nRows wiersze, począwszy od pierwszego wiersza bieżącego zestawu wierszy.
SQL_FETCH_NEXT Następnych wierszy; nRows jest ignorowane. MoveNext
SQL_FETCH_PRIOR Poprzedni zestaw wierszy; nRows jest ignorowane. MovePrev
SQL_FETCH_FIRST Pierwszy zestaw wierszy w zestawie rekordów; nRows jest ignorowane. MoveFirst
SQL_FETCH_LAST Ostatni kompletnego zestawu wierszy w zestawie rekordów; nRows jest ignorowane. MoveLast
SQL_FETCH_ABSOLUTE Jeśli nRows BT; 0, wierszy nRows wiersze, począwszy od początku zestawu rekordów. Jeśli nRows < 0, wierszy, począwszy od nRows wiersz(e) od końca zestawu rekordów. Jeśli nRows = 0, a następnie zwracany jest warunkiem rozpoczęcia z pliku (BOF). SetAbsolutePosition
SQL_FETCH_BOOKMARK Zestaw wierszy, począwszy od wiersza, którego wartość zakładki odpowiada nRows. SetBookmark

Uwaganbsp;  W trybie tylko do przodu o zestawy rekordów Przenoszenie jest prawidłowa tylko o wartości SQL_FETCH_&NEXT dla wFetchType.

Przestroga   Wywołanie, przenieść zgłasza wyjątek, jeśli zestaw rekordów nie zawiera żadnych rekordów. Aby ustalić, czy zestaw rekordów zawiera rekordy, wywołanie IsBOF i IsEOF.

Jeśli były przewijane w przeszłości początek lub koniec zestawu rekordów (niezerowych zwracaIsBOF lub IsEOF ), wywołując funkcję przenieść będzie prawdopodobnie rzut CDBException. Na przykład jeśli IsEOF zwraca wartość różną od zera, a nie IsBOF , następnie MoveNext wygeneruje wyjątek, ale MovePrev nie.

Jeśli wywołana zostanie, przenieść podczas bieżącego rekordu jest aktualizowany lub dodane, aktualizacje są tracone bez ostrzeżenia.

Aby uzyskać więcej informacji na temat nawigacji zestawu rekordów, zobacz artykuły rekordów: przewijanie (ODBC) i rekordów: zakładki i bezwzględne położenie (ODBC) w Visual C++ Programmer's Guide. Aby uzyskać więcej informacji na temat pobierania wierszy zbiorczej, zobacz artykuł rekordów: pobieranie rekordów w masowych (ODBC) w Visual C++ Programmer's Guide. Aby uzyskać pokrewne informacje zobacz opis funkcji interfejsu API ODBC SQLExtendedFetch ODBC SDK Programmer's Reference.

Przykład

/ / r jest CRecordset lub / / pochodnych CRecordset obiektu

/ / Zmień rozmiar zestawu wierszy na 5
r.SetRowsetSize [5];

/ / Przejście do pierwszego rekordu
/ / w zestawie rekordów
r.MoveFirst ();

/ / PrzejdY do rekordu, szósty
r.Przenieść [5];
/ / Inne równoważne sposoby
/ / PrzejdY do rekordu, szóste:
/ / r.Przenieś (6, SQL_FETCH_ABSOLUTE);
/ / r.SetAbsolutePosition [6];
/ / W tym przypadku jest szóstym rekordu
/ / pierwszego rekordu w następnych wierszy
/ /, również są równoważne:
/ / r.Przenieś (1, SQL_FETCH_NEXT);
/ / r.MoveNext)

Omówie&nie CRecordset |nbsp; Klasa członków | Wykres hierarchii

Zobacz teżnbsp;CRecordset::Move&Next, CRecordset::MovePrev, CRecordset::MoveFirst, CRecordset::MoveLast, CRecordset::SetAbsolutePosition, CRecordset::SetBookmark, CRecordset::IsBOF, CRecordset::IsEOF, CRecordset::CheckRowsetError

Index