Udostępnij za pośrednictwem


Rekordów: Architektura (ODBC)

Ten temat dotyczy klas MFC ODBC.

W tym temacie opisano członków danych, które obejmują architektury obiektu recordset:

  • Pole danych członków

  • Parametr danych członków

  • Przy użyciu m_nFields i m_nParams danych członków

[!UWAGA]

Ten temat dotyczy obiekty pochodzące z CRecordset w którym wiersz luzem pobieranie nie została zaimplementowana.Jeśli pobieranie wiersza zbiorczego jest zaimplementowana architektura jest podobne.Aby poznać różnice, zobacz zestaw rekordów: pobieranie rekordów luzem (ODBC).

Klasa próbki

Podczas używania MFC ODBC konsumenta kreatora z Add Class kreatora, aby zadeklarować klasy rekordów pochodzących z CRecordset, wynikowy klasa ma ogólną strukturę pokazane w poniższej klasie proste:

class CCourse : public CRecordset
{
public:
   CCourse(CDatabase* pDatabase = NULL);
   ...
   CString m_strCourseID;
   CString m_strCourseTitle;
   CString m_strIDParam;
};

Na początku klasy, kreator zapisuje zbiór pole danych członków.Podczas tworzenia klasy należy określić jeden lub więcej członków dane pole.Jeśli klasa jest sparametryzowana, jako próbki klasy jest (z elementu danych m_strIDParam), należy ręcznie dodać Członkowie danych parametru.Kreator nie obsługuje dodawania parametrów do klasy.

Pole danych członków

Najważniejsze składniki klasy rekordów są członkami dane pole.Dla każdej kolumny wybrane źródło danych klasa zawiera członkiem odpowiedni typ danych dla tej kolumny danych.Na przykład klasy próbki wyświetlane na początku tego tematu ma dwa pola danych członków, zarówno typu CStringo nazwie m_strCourseID i m_strCourseTitle.

Gdy zestaw rekordów zaznacza zestaw rekordów, ramach automatycznie wiąże się z kolumny w bieżącym rekordzie (po Otwórz rozmowy, pierwszy rekord jest aktualna) członkom pola danych obiektu.Oznacza to, że ramy używa elementu danych odpowiedniego pola jako buforu do przechowywania zawartości kolumny rekordu.

Użytkownik przewija do nowego rekordu, ramach członków pola danych do reprezentowania używany bieżący rekord.Ramy odświeża członków danych pola, zastępując wartości poprzedniego rekordu.Członkowie pola danych są również używane dla aktualizacji bieżącego rekordu i dodawanie nowych rekordów.Jako część procesu aktualizacji rekordu można określić wartości aktualizacji przez przypisanie wartości bezpośrednio do odpowiedniego pola danych członka lub członków.

Parametr danych członków

Jeśli klasa jest sparametryzowana, ma jeden lub więcej członków danych parametru.Klasa sparametryzowana pozwala Ci utworzyć kwerendę rekordów na informacjach uzyskanych lub obliczane w czasie wykonywania.

Zazwyczaj parametr pomaga zawęzić wybór, jak w poniższym przykładzie.Na podstawie klasy próbki na początku tego tematu, obiektu recordset może wykonać następującą instrukcję SQL:

SELECT CourseID, CourseTitle FROM Course WHERE CourseID = ?

"?" Jest symbolem zastępczym dla wartości parametru, dostarczą w czasie wykonywania.Podczas konstruowania zestawu rekordów i ustawić jego m_strIDParam staje się skuteczne instrukcji SQL dla zestawu rekordów elementu danych do MATH101,:

SELECT CourseID, CourseTitle FROM Course WHERE CourseID = MATH101

Przez określenie parametru danych członków, ramach Opisz parametrów w ciągu SQL.Ramy wiąże parametr, który pozwala ODBC wiedzieć, gdzie można uzyskać wartości do podstawienia symboli zastępczych.Na przykład Wynikowy zestaw rekordów zawiera tylko rekordy z tabeli Kurs z kolumny CourseID, których wartość jest MATH101.Wszystkie kolumny określonego w rekordzie tym są zaznaczone.Można określić liczbę parametrów (i symbole zastępcze), możesz potrzebować.

[!UWAGA]

MFC nie działają, sama z parametrami — w szczególności nie wykonywać zastępczych tekstu.Zamiast tego MFC informuje ODBC skąd uzyskać parametru; ODBC pobiera dane i wykonuje niezbędne parametry.

[!UWAGA]

Kolejność parametrów jest istotna.Informacje na ten temat oraz więcej informacji o parametrach, zobacz zestaw rekordów: parametryzacja zestaw rekordów (ODBC).

Korzystanie z m_nFields i m_nParams

Gdy kreator zapisuje konstruktora dla klasy, inicjuje również m_nFields elementu danych, który określa liczbę pole danych członków w klasie.Jeśli dodasz dowolne Parametry do swojej klasy, należy także dodać inicjowania dla m_nParams elementu danych, który określa liczbę członków danych parametru.Ramy używa tych wartości do pracy z elementami danych.

Aby uzyskać dodatkowe informacje i przykłady, zobacz wymiany pola rekordu: za pomocą RFX.

Zobacz też

Koncepcje

Zestaw rekordów (ODBC)

Zestaw rekordów: Deklarowanie klasy dla tabeli (ODBC)

Wymiany pola rekordu (RFX)