Udostępnij za pośrednictwem


Zestaw rekordów (ODBC)

Ten temat dotyczy klas MFC ODBC.

A CRecordset obiekt reprezentuje zestawu rekordów wybrane źródła danych.Rekordy mogą być od:

  • Tabela.

  • Kwerenda.

  • Procedura przechowywana, która uzyskuje dostęp do jednej lub więcej tabel.

Przykład zestaw rekordów na podstawie tabeli jest "wszyscy klienci", który uzyskuje dostęp do tabeli Nabywca.Przykładem kwerendy jest "wszystkie faktury dla Joe Kowalski". Przykładem zestaw rekordów na podstawie procedury przechowywanej (czasami nazywany wstępnie zdefiniowanej kwerendy) jest "wszystkie konta beznadziejności," który wywołuje procedurę przechowywaną w bazie danych typu back-end.Zestaw rekordów można połączyć dwa lub więcej tabel z tego samego źródła danych, ale nie tabele z różnych źródeł danych.

[!UWAGA]

Informacje wynikające z klas rekordów przy użyciu kreatorów, zobacz Dodawanie konsumenta ODBC MFC i obsługi bazy danych, Kreator aplikacji MFC.

[!UWAGA]

Niektóre sterowniki ODBC obsługuje widoki bazy danych.Widok w tym sensie jest kwerendy utworzone za pomocą programu SQL CREATE VIEW instrukcji.Kreatorzy aktualnie nie obsługuje widoków, ale można samodzielnie kodu tę obsługę.

Funkcje zestawu rekordów

Wszystkie obiekty recordset udostępnić następujące możliwości:

  • Jeśli źródło danych nie jest tylko do odczytu, można określić, że Twój zestaw rekordów, należy aktualizowalna, appendable, lub tylko do odczytu.Jeśli zestaw rekordów można aktualizować, można wybrać pesymistycznego lub optymistyczne blokowania metody, pod warunkiem sterownik dostarcza właściwe wsparcie blokowania.Jeśli źródło danych jest tylko do odczytu, zestaw rekordów będzie tylko do odczytu.

  • Członkowskie można wywołać funkcji przewijania przez wybrane rekordy.

  • Możesz filtru rekordy, aby ograniczyć rekordy, które są wybrane spośród dostępnych.

  • Możesz sortowania rekordy w kolejności rosnącej lub malejącej, na podstawie jednej lub kilku kolumn.

  • Możesz parameterize zestaw rekordów, aby kwalifikować się do wyboru rekordów w czasie wykonywania.

Migawki i zestawy dynamiczne

Istnieją dwa podstawowe rodzaje zestawy rekordów: migawek i zestawy dynamiczne.Obsługiwane są zarówno przez klasę CRecordset.Udziały każdego wspólne cechy wszystkie zestawy rekordów, ale w drodze specjalistyczne każdego również rozszerza funkcjonalność wspólnej.Migawki statyczne widok danych i są przydatne dla raportów i inne sytuacje, w których chcesz widok danych poprzedniej w określonym czasie.Zestawy dynamiczne są przydatne, gdy chcesz, aby aktualizacje dokonane przez innych użytkowników były widoczne w zestawie rekordów bez konieczności PonówKwerendę lub odświeżania rekordów.Migawki i zestawy dynamiczne można aktualizować lub tylko do odczytu.Aby odzwierciedlać rekordy dodane lub usunięte przez innych użytkowników, wywołanie CRecordset::Requery.

CRecordsetUmożliwia również dwa inne rodzaje zestawy rekordów: zestawy rekordów dynamicznych i Progresywne zestawy rekordów.Dynamiczne zestawy rekordów są podobne do zestawy dynamiczne; Jednak zestawy rekordów dynamicznych odzwierciedlają żadnych rekordów, dodawane lub usuwane bez wywołania CRecordset::Requery.Z tego powodu dynamiczne zestawy rekordów są ogólnie drogie w odniesieniu do czasu przetwarzania w systemie DBMS i wiele sterowników ODBC nie obsługuje je.Natomiast zestawy rekordów tylko przesyłanie dalej zapewnić najbardziej efektywne metody dostępu do danych dla zestawy rekordów, które nie wymagają aktualizacji lub przewijanie do tyłu.Na przykład może użyć rekordów tylko przesyłanie dalej do migracji danych z jednego źródła danych do innego, tylko gdy konieczne do poruszania się dane w kierunku do przodu.Aby użyć rekordów, wykonaj obie następujące czynności:

  • Opcja przekazać CRecordset::forwardOnly jako nOpenType parametr Otwórz funkcji składowej.

  • Określ CRecordset::readOnly w dwOptions parametr Otwórz.

    [!UWAGA]

    Informacje dotyczące wymagań sterownik ODBC dla wsparcia dynamiczny, zobacz ODBC.Lista sterowników ODBC, zawarte w tej wersji programu Visual C++ i informacje dotyczące uzyskiwania dodatkowych sterowników, zobacz Listy sterowników ODBC.

Zestawach rekordów

Dla każdego odrębne tabeli, widoku lub procedury przechowywanej, który ma dostęp do zwykle określają klasy pochodzącej od CRecordset.(Wyjątkiem jest sprzężenie bazy danych, w którym jeden zestaw rekordów reprezentuje kolumny z dwóch lub więcej tabel). Gdy wynikają jest klasa zestawu rekordów, należy włączyć mechanizm wymiany (RFX) w polu rekordu lub mechanizmem wymiany (RFX luzem) w polu rekordu luzem, podobne do okna dialogowego mechanizmu wymiany (DDX) danych.RFX i RFX luzem uproszczenia przekazywania danych ze źródła danych w twoim zestawie rekordów; RFX dodatkowo przenosi dane z twoim zestawie rekordów źródła danych.Aby uzyskać więcej informacji, zobacz Exchange pole rekordu (RFX) i zestaw rekordów: pobieranie rekordów luzem (ODBC).

Obiekt recordset daje dostęp do wszystkich zaznaczonych rekordów.Przewiń wielu zaznaczonych rekordów za pomocą CRecordset Członkowskich funkcje, takie jak MoveNext i MovePrev.W tym samym czasie obiektu recordset reprezentuje tylko jeden z zaznaczonych rekordów bieżącego rekordu.Pola bieżącego rekordu można zbadać oświadczając rekordów zmienne składowe klasy, które odpowiadają kolumnom tabeli lub rekordy, które w wyniku kwerendy bazy danych.Informacje o zestawie rekordów danych członków, zobacz zestaw rekordów: Architecture (ODBC).

W następujących tematach opisano szczegółów za pomocą obiektów recordset.Tematy są wymienione w kategoriach funkcjonalności i kolejność przeglądania naturalnych umożliwiające odczytu sekwencyjnego.

5sbfs6f1.collapse_all(pl-pl,VS.110).gifTematy dotyczące mechaniki otwarcia, czytania i zamknięcia zestawy rekordów

5sbfs6f1.collapse_all(pl-pl,VS.110).gifTematy dotyczące mechaniki modyfikacji zestawów rekordów

5sbfs6f1.collapse_all(pl-pl,VS.110).gifTematy dotyczące nieco bardziej zaawansowanych technik

5sbfs6f1.collapse_all(pl-pl,VS.110).gifTematy dotyczące sposobu pracy zestawy rekordów

Zobacz też

Zadania

Dodawanie klienta MFC ODBC

Koncepcje

Open Database Connectivity (ODBC)

Transakcja (ODBC)