Udostępnij za pośrednictwem


Zestaw rekordów: Tworzenie i zamknięcia zestawy rekordów (ODBC)

Ten temat dotyczy klas MFC ODBC.

Aby użyć zestawu rekordów, konstruowania obiektu recordset, a następnie wywołać jej Otwórz Członkowskich funkcji do wykonywania kwerendy w zestawie rekordów i wybierz rekordy.Po zakończeniu z zestawu rekordów, należy zamknąć i zniszczyć obiekt.

W tym temacie wyjaśniono:

  • Kiedy i jak utworzyć obiekt recordset.

  • Kiedy i jak może kwalifikować się do zachowania w zestawie rekordów przez parametryzacja, filtrowanie, sortowanie lub blokowanie go.

  • Kiedy i jak zamknąć obiektu recordset.

Tworzenie zestawów rekordów w czasie wykonywania

Przed utworzeniem zestawu rekordów obiektów w programie, należy zwykle napisać klas specyficzne dla aplikacji rekordów.Aby uzyskać więcej informacji na temat ten krok, zobacz Dodawanie konsumenta 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 danych w aplikacji i obsługuje jaki sterownik ODBC.Aby uzyskać więcej informacji, zobacz dynamiczny i Migawka.

Aby otworzyć zestaw rekordów

  1. Konstruowanie obiektu użytkownika CRecordset-klasy.

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

  2. Opcjonalnie zmodyfikować domyślne zachowanie zestawu rekordów.Dostępne opcje, zobacz Ustawianie opcji rekordów.

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

W konstruktorze, przekazać wskaźnik do CDatabase obiektu lub przekazać NULL do czasowego użyć obiektu bazy danych, który w ramach tworzy i otwiera na podstawie ciągu połączenia, zwróconego przez GetDefaultConnect funkcji składowej.CDatabase Obiekt może już być podłączony do źródła danych.

Wywołanie Otwórz używa SQL, aby wybrać rekordy ze źródła danych.Pierwszy rekord zaznaczone (jeśli ma zastosowanie) jest bieżącym rekordzie.Wartości pola tego rekordu są przechowywane w obiektu recordset pola danych członków.Jeśli zaznaczone zostały wszystkie rekordy, zarówno IsBOF i IsEOF Członkowskich funkcji zwraca 0.

W sieci Otwórz rozmowy, można:

  • Określ, czy zestaw rekordów jest pobierany lub migawki.Domyślnie otwierane jako migawek zestawy rekordów.Lub można określić tylko przesyłanie dalej rekordów, który umożliwia tylko do przodu przewijanie, jeden rekord naraz.

    Domyślnie zestaw rekordów używa domyślnego typu przechowywane w CRecordset Członkowskich danych m_nDefaultType.Kreatorzy napisać kod zainicjować m_nDefaultType do typu zestawu rekordów, wybierz w kreatorze.Zamiast akceptować to ustawienie domyślne, można zastąpić innym typem zestawu rekordów.

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

  • Określ, czy zestaw rekordów jest tylko do odczytu lub dołączyć tylko do odczytu.Zestawy rekordów pozwalają na pełną aktualizację domyślnie, ale można ograniczyć, do dodawania nowych rekordów tylko lub może uniemożliwić wszystkie aktualizacje.

Poniższy przykład ilustruje sposób otworzyć obiekt migawkę tylko do odczytu klasy CStudentSet, klasa specyficzna dla 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, pracować z rekordów za pomocą Członkowskie funkcji i danych członków obiektu.W niektórych przypadkach można ponowić kwerendę lub odświeżyć zestawu rekordów, aby uwzględnić zmiany, które nastąpiły w źródle danych.Aby uzyskać więcej informacji, zobacz zestaw rekordów: ponawiać kwerendę rekordów (ODBC).

PoradaPorada

Ciąg połączenia, używanych podczas rozwoju może nie być ten sam ciąg połączenia, że ewentualne użytkownicy potrzebują.Pomysły dotyczące uogólnianie aplikacji w tym względzie, źródła danych: Zarządzanie połączeniami (ODBC).

Ustawianie opcji zestawu rekordów

Po konstruowania obiektu recordset, ale przed wywołaniem Otwórz Aby wybrać rekordy, warto niektóre opcje sterujące zachowanie w zestawie rekordów.Dla wszystkich rekordów można:

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

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

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

Można też ustawić następującą opcję, jeśli okoliczności:

  • Jeśli zestaw rekordów można aktualizować i obsługuje opcje blokowania, należy określić blokowania metodę aktualizacji.

[!UWAGA]

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

Zamknięcie zestawu rekordów

Po zakończeniu z twoim zestawie rekordów, musi go zbyć i cofnąć jego 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 ramce stosu funkcji, obiekt jest niszczony automatycznie, gdy obiekt wykracza poza zakres.W przeciwnym razie użyj usunąć operatora.

Zamknij zwalnia rekordów HSTMT obsługi.Obiekt C++ nie zniszczyć.

Zobacz też

Koncepcje

Zestaw rekordów (ODBC)

Zestaw rekordów: Przewijanie (ODBC)

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