Udostępnij za pośrednictwem


Zestaw rekordów: tworzenie i zamykanie zestawów rekordów (ODBC)

Ten temat dotyczy klas MFC ODBC.

Aby użyć zestawu rekordów, konstruowania obiektu zestaw rekordów, a następnie wywołać jej Otwórz funkcji składowej, aby uruchomić kwerendę zestawu rekordów i wybierz rekordy.Po zakończeniu z zestawem rekordów, zamknij i zniszczyć obiektu.

Ten temat tłumaczy:

  • Kiedy i jak utworzyć obiekt recordset.

  • Kiedy i w jaki sposób można zakwalifikować zachowanie zestawu rekordów przez parametryzacja, filtrowanie, sortowanie lub blokowanie go.

  • Kiedy i jak zamknąć obiektu recordset.

Tworzenie zestawów rekordów w czasie wykonywania

Aby można było utworzyć obiekty recordset w programie, należy zwykle napisać klas rekordów specyficznych dla aplikacji.Aby uzyskać więcej informacji o tym kroku wstępnych, zobacz dodanie odbiorca ODBC MFC.

Otwórz obiekt dynamiczny lub, gdy trzeba wybrać rekordy ze źródła danych.Typ obiektu, aby utworzyć zależy od tego, co należy zrobić z danymi w aplikacji i na Twój sterownik ODBC obsługuje.Aby uzyskać więcej informacji, zobacz dynamiczny i Migawka.

Aby otworzyć zestaw rekordów

  1. Utworzyć obiekt użytkownika CRecordset-klasy.

    Można utworzyć obiekt na stercie lub ramek stosu funkcji.

  2. Opcjonalnie można zmodyfikować domyślne zachowanie zestawu rekordów.Dla dostępnych opcji, zobacz Ustawienie opcji zestawu rekordów.

  3. Wywołanie obiektu Otwórz funkcji składowej.

W konstruktorze, przekazać wskaźnik do CDatabase obiektu lub przekazać wartości NULL używać tymczasowego obiektu bazy danych, który w ramach tworzy i otwiera oparte na ciąg połączenia zwracany przez GetDefaultConnect funkcji składowej.CDatabase Obiekt może już być podłączony do źródła danych.

Wywołanie Otwórz korzysta z języka SQL do wybierania rekordów ze źródła danych.Pierwszym rekordem zaznaczone (jeśli istnieje) jest bieżący rekord.Wartości pól tego rekordu są przechowywane w elementów członkowskich danych pola obiektu recordset.Jeśli zaznaczone zostały wszystkie rekordy, zarówno IsBOF i IsEOF Członkowskich zwracają wartość 0.

W swojej Otwórz rozmowy, można:

  • Określ, czy zestaw rekordów jest dynamiczny lub migawka.Zestawy rekordów otwórz jako migawek domyślnie.Lub można określić zestaw rekordów tylko do przodu, który umożliwia przewijanie tylko do przodu, jeden rekord naraz.

    Domyślnie zestaw rekordów używa domyślnego typu przechowywane w CRecordset element członkowski danych m_nDefaultType.Kreatorzy napisać kod, aby zainicjować m_nDefaultType do typ zestawu rekordów, można wybrać w kreatorze.A nie akceptuje to ustawienie domyślne, można zastąpić inny typ zestawu rekordów.

  • Określ ciąg, aby zastąpić domyślny SQL Wybierz instrukcji, która tworzy zestaw rekordów.

  • Określ, czy zestaw rekordów jest tylko do odczytu lub tylko Dołącz.Zestawy rekordów pozwalają na pełną aktualizację domyślnie, ale można ograniczyć, który na dodawanie nowych rekordów tylko lub można zabronić wszystkich aktualizacji.

Poniższy przykład pokazuje, jak otworzyć obiekt Migawka tylko do odczytu klasy CStudentSet, klasy aplikacji:

// Construct the snapshot object
CStudentSet rsStudent( NULL );
// Set options if desired, then open the recordset
if(!rsStudent.Open(CRecordset::snapshot, NULL, CRecordset::readOnly))
    return FALSE;
// Use the snapshot to operate on its records...

Po wywołaniu Otwórz, użyć Członkowskich funkcje i danych członków obiektu do pracy z rekordów.W niektórych przypadkach można ponowić kwerendę lub odświeżyć zestaw rekordów w celu uwzględnienia zmian, które miały miejsce w źródle danych.Aby uzyskać więcej informacji, zobacz zestaw rekordów: ponowne wykonanie kwerendy rekordów (ODBC).

PoradaPorada

Ciąg połączenia, używanego podczas rozwoju nie może być sam ciąg połączenia, który ewentualne użytkownicy potrzebują.Aby poznać uogólnianie aplikacji w tym zakresie, zobacz źródło danych: Zarządzanie połączeniami (ODBC).

Ustawienie opcji zestawu rekordów

Po utworzenia obiektu recordset, ale przed wywołaniem Otwórz do wybierania rekordów, można ustawić kilka opcji, aby kontrolować zachowanie zestawu rekordów.Dla wszystkich zestawów rekordów można:

  • Określ Filtr Aby ograniczyć wybór rekordów.

  • Określ sortowania zamówienia dla rekordów.

  • Określ Parametry , można wybrać rekordów przy użyciu informacji uzyskanych lub obliczane w czasie wykonywania.

Jeśli warunki są odpowiednie, można też ustawić następującą opcję:

  • Jeżeli zestaw rekordów jest aktualizowana i obsługuje opcje blokowania, określić blokowania metoda stosowana do aktualizacji.

[!UWAGA]

Wpływ na wybór zapisu, należy ustawić te opcje, zanim zadzwonisz do Otwórz funkcji składowej.

Zamknięcie zestawu rekordów

Po zakończeniu pracy nad Twoim zestawie rekordów, należy pozbyć się go i Cofnij przydzielanie pamięci.

Aby zamknąć zestaw rekordów

  1. Wywołanie jego Zamknij funkcji składowej.

  2. Zniszczenie obiektu recordset.

    Jeśli zostały zadeklarowane na klatce stosu funkcji, obiekt jest niszczony automatycznie, kiedy obiekt wykracza poza zakres.W przeciwnym razie użyj usunąć operatora.

Zamknij zwalnia zestawu rekordów HSTMT obsługi.Nie niszczy obiekt języka C++.

Zobacz też

Koncepcje

Zestaw rekordów (ODBC)

Zestaw rekordów: przewijanie (ODBC)

Zestaw rekordów: dodawanie, aktualizowanie i usuwanie rekordów (ODBC)