Partager via


CRecordset, classe

Représente un ensemble d'enregistrements sélectionnés à partir d'une source de données.

class CRecordset : public CObject

Membres

Constructeurs publics

Nom

Description

CRecordset::CRecordset

Construit un objet CRecordset. Votre classe dérivée doit fournir un constructeur qui appelle celui-ci.

Méthodes publiques

Nom

Description

CRecordset::AddNew

Se prépare à ajouter un nouvel enregistrement. Appel Update pour effectuer l'addition.

CRecordset::CanAppend

Retourne une valeur différente de zéro si les nouveaux enregistrements peuvent être ajoutés au recordset via la fonction membre d' AddNew .

CRecordset::CanBookmark

Retourne une valeur différente de zéro si le recordset prend en charge des signets.

CRecordset::Cancel

Annule une opération asynchrone ou un processus d'un deuxième thread.

CRecordset::CancelUpdate

Annule toutes les mises à jour en attente en raison d'une opération d' AddNew ou d' Edit .

CRecordset::CanRestart

Retourne une valeur différente de zéro si Requery peut être appelé pour exécuter la requête du recordset de nouveau.

CRecordset::CanScroll

Retourne une valeur différente de zéro si vous pouvez parcourir les enregistrements.

CRecordset::CanTransact

Retourne une valeur différente de zéro si la source de données prend en charge les transactions.

CRecordset::CanUpdate

Retourne une valeur différente de zéro si le recordset peut être mis à jour (vous pouvez ajouter, mettre à jour, ou supprimer des enregistrements).

CRecordset::CheckRowsetError

Appelé pour gérer les erreurs générées pendant la récupération d'enregistrement.

CRecordset::Close

Ferme le recordset et l'ODBC HSTMT associé.

CRecordset::Delete

Supprime l'enregistrement actif du recordset. Vous devez explicitement le défilement à un autre enregistrement après la suppression.

CRecordset::DoBulkFieldExchange

Appelé pour échanger les lignes en bloc de données de la source de données vers le recordset. Mécanisme RFX en bloc d'outils (bulk RFX).

CRecordset::DoFieldExchange

Appelé pour échanger des données (dans les deux sens) entre les membres de données de type champ de recordset et l'enregistrement correspondant de la source de données. Les outils signalent l'échange de RFX (record field exchange).

CRecordset::Edit

Se prépare à des modifications apportées à l'enregistrement courant. Appel Update pour terminer la modification.

CRecordset::FlushResultSet

Retourne une valeur différente de zéro si un autre jeu de résultats à récupérer, en utilisant une requête prédéfinie.

CRecordset::GetBookmark

Assigne la valeur du signet d'un enregistrement à l'objet paramètre.

CRecordset::GetDefaultConnect

Appelé pour obtenir la chaîne de connexion par défaut.

CRecordset::GetDefaultSQL

Appelé pour obtenir la chaîne SQL par défaut de l'exécution.

CRecordset::GetFieldValue

Retourne la valeur d'un champ d'un recordset.

CRecordset::GetODBCFieldCount

Retourne le nombre de champs du recordset.

CRecordset::GetODBCFieldInfo

Retourne les types spécifiques d'informations sur les champs d'un recordset.

CRecordset::GetRecordCount

Retourne le nombre d'enregistrements du recordset.

CRecordset::GetRowsetSize

Retourne le nombre d'enregistrements que vous souhaitez récupérer lors d'une seule extraction.

CRecordset::GetRowsFetched

Retourne le nombre de lignes récupérées réel pendant un effort.

CRecordset::GetRowStatus

Retourne l'état de la ligne après un effort.

CRecordset::GetSQL

Obtient la chaîne SQL utilisée pour sélectionner des enregistrements du recordset.

CRecordset::GetStatus

Obtient l'état du recordset : l'index de l'enregistrement en cours et si un nombre final des enregistrements a été obtenu.

CRecordset::GetTableName

Obtient le nom de la table sur lequel le recordset est basé.

CRecordset::IsBOF

Retourne une valeur différente de zéro si le recordset a été positionné avant le premier enregistrement. Il n'existe aucun enregistrement courant.

CRecordset::IsDeleted

Retourne une valeur différente de zéro si le recordset est positionné sur un enregistrement supprimé.

CRecordset::IsEOF

Retourne une valeur différente de zéro si le recordset a été positionnée après le dernier enregistrement. Il n'existe aucun enregistrement courant.

CRecordset::IsFieldDirty

Retourne une valeur différente de zéro si le champ spécifié dans l'enregistrement en cours a été modifié.

CRecordset::IsFieldNull

Retourne une valeur différente de zéro si le champ spécifié dans l'enregistrement en cours est null (n'a aucune valeur).

CRecordset::IsFieldNullable

Retourne une valeur différente de zéro si le champ spécifié dans l'enregistrement en cours peut avoir la valeur null (n'ayant pas de valeur).

CRecordset::IsOpen

Retourne une valeur différente de zéro si Open a été appelé précédemment.

CRecordset::Move

Positionne le recordset en nombre d'enregistrements spécifié de l'enregistrement en cours dans l'un ou l'autre direction.

CRecordset::MoveFirst

Positionne l'enregistrement actif sur le premier enregistrement du recordset. Déterminez IsBOF en premier.

CRecordset::MoveLast

Positionne l'enregistrement actif sur le dernier enregistrement ou sur le dernier jeu de lignes. Déterminez IsEOF en premier.

CRecordset::MoveNext

Positionne l'enregistrement en cours sur l'enregistrement suivant ou sur l'ensemble de lignes. Déterminez IsEOF en premier.

CRecordset::MovePrev

Positionne l'enregistrement en cours sur l'enregistrement précédent ou sur le jeu de lignes précédent. Déterminez IsBOF en premier.

CRecordset::OnSetOptions

Appelé pour définir des options (utilisées sur la sélection) pour l'instruction spécifiée ODBC.

CRecordset::OnSetUpdateOptions

Appelé pour définir des options (utilisées sur la mise à jour) pour l'instruction spécifiée ODBC.

CRecordset::Open

Ouvre le recordset en extrayant la table ou en exécutant la requête que le recordset représente.

CRecordset::RefreshRowset

Actualise les données et l'état des lignes spécifiées.

CRecordset::Requery

Exécute la requête du recordset de nouveau pour actualiser les enregistrements sélectionnés.

CRecordset::SetAbsolutePosition

Positionne le recordset dans l'enregistrement correspondant au numéro d'enregistrement spécifiée.

CRecordset::SetBookmark

Positionne le recordset dans l'enregistrement spécifié par le signet.

CRecordset::SetFieldDirty

Marque le champ spécifié dans l'enregistrement en cours comme changé.

CRecordset::SetFieldNull

Définit la valeur du champ spécifié dans l'enregistrement actif à null (n'ayant pas de valeur).

CRecordset::SetLockingMode

Définit le mode de verrouillage à verrouiller « optimiste » (valeur par défaut) ou à verrouillage pessimiste «  ». Détermine comment les enregistrements sont verrouillés pour les mises à jour.

CRecordset::SetParamNull

Définit le paramètre spécifié avec la valeur null (n'ayant pas de valeur).

CRecordset::SetRowsetCursorPosition

Place le curseur sur la ligne spécifiée dans l'ensemble de lignes.

CRecordset::SetRowsetSize

Spécifie le nombre d'enregistrements que vous souhaitez récupérer pendant un effort.

CRecordset::Update

Termine une opération d' AddNew ou d' Edit en enregistrant les données nouvelles ou modifiées dans la source de données.

Données membres publiques

Nom

Description

CRecordset::m_hstmt

Contient le modèle d'instruction ODBC pour le recordset. Tapez HSTMT

CRecordset::m_nFields

Contient le nombre de membres de données de type champ du recordset. Tapez UINT

CRecordset::m_nParams

Contient le nombre de membres de données de type paramètre dans le recordset. Tapez UINT

CRecordset::m_pDatabase

Contient un pointeur vers l'objet d' CDatabase via lequel le recordset est connecté à une source de données.

CRecordset::m_strFilter

Contient CString qui spécifie une clause de WHERE (SQL) SQL. Utilisé en tant que filtre pour sélectionner uniquement les enregistrements qui répondent à certains critères.

CRecordset::m_strSort

Contient CString qui spécifie une clause SQL ORDER BY . Utilisé pour contrôler la façon dont les enregistrements sont triés.

Notes

Appelés « recordsets, » des objets d' CRecordset sont généralement utilisés sous deux formes : feuilles de réponse dynamiques et instantanés. Une feuille de réponse dynamique reste synchronisé avec les mises à jour de données effectuées par d'autres utilisateurs. Un instantané est une vue statique des données. Chaque forme représente un ensemble d'enregistrements résolus au moment où le recordset est ouvert, mais lorsque vous accédez à un enregistrement dans une feuille de réponse dynamique, il indique ensuite les modifications apportées à l'enregistrement, par d'autres utilisateurs ou par d'autres recordsets de votre application.

Notes

Si vous utilisez DAO (DAO) classe plutôt que les classes ODBC (Open Database Connectivity), utilisez la classe CDaoRecordset à la place.Pour plus d'informations, consultez l'article présentation : Programmation de bases de données.

Pour utiliser l'un ou l'autre de type de recordset, vous dérivez généralement une classe de recordset spécifique à l'application d' CRecordset. Les recordsets des enregistrements d'une source de données, et vous pouvez ensuite :

  • Parcourir les enregistrements.

  • Mettre à jour des enregistrements et spécifiez à jour le mode de verrouillage.

  • Filtrez le recordset pour limiter les enregistrements il choisit parmi celles disponibles dans la source de données.

  • Trier le recordset.

  • Paramétrer le recordset pour personnaliser la sélection des informations inconnues qu'au moment de l'exécution.

Pour utiliser votre classe, ouvrir une base de données et construire un objet recordset, en passant le constructeur un pointeur vers l'objet d' CDatabase . Appelez la fonction membre de Ouvrir du recordset, où vous pouvez spécifier si l'objet est une feuille de réponse dynamique ou un instantané. Appeler Ouvrir sélectionne des données de la source de données. Une fois que l'objet recordset est ouvert, utilisez ses fonctions membres et données membres pour parcourir les enregistrements et pour les traiter. Les opérations disponibles dépendent de si l'objet est une feuille de réponse dynamique ou un instantané, s'il peut être mise à jour ou en lecture seule (cela dépend de la capacité de la source de données ODBC (Open Database Connectivity)), et si vous avez implémenté l'extraction de lignes en bloc. Pour actualiser les enregistrements qui ont peut-être été modifiés ou ajoutés comme l'appel de Ouvrir , appelez la fonction membre de Requery de l'objet. Appelez la fonction membre de Fermer de l'objet et détruisez l'objet lorsque vous avez terminé avec elle.

Dans une classe dérivée d' CRecordset , l'record field exchange (bulk RFX) ou RFX en bloc (bulk RFX) est utilisé pour prendre en charge la lecture et mettre à jour les champs d'enregistrement.

Pour plus d'informations sur les recordsets et l'record field exchange, consultez les articles présentation : Programmation de bases de données, recordset (ODBC), recordset : Extraction globale d'enregistrements (ODBC), et Record field exchange (RFX). Pour un focus sur les feuilles de réponse dynamiques et des instantanés, consultez les articles dynaset et instantané.

Hiérarchie d'héritage

CObject

CRecordset

Configuration requise

Header: afxdb.h

Voir aussi

Référence

CObject, classe

Graphique de la hiérarchie

CDatabase, classe

CRecordView, classe