CRecordset::SetBookmark
Positionne le recordset dans l'enregistrement contenant le signet spécifié.
void SetBookmark(
const CDBVariant& varBookmark
);
Paramètres
- varBookmark
Une référence à un objet de CDBVariant contenant la valeur du signet pour un enregistrement spécifique.
Notes
Pour déterminer si les signets sont pris en charge dans le recordset, appelez CanBookmark. Pour rendre les signets disponibles s'ils sont pris en charge, vous devez définir l'option de CRecordset::useBookmarks dans le paramètre d' dwOptions de la fonction membre d' Ouvrez .
Notes
Si les signets sont non pris en charge ou non disponibles, appeler SetBookmark entraîne une exception est levée.Les signets ne sont pas pris en charge sur les recordsets en avant seulement.
À tout d'abord extraire le signet de l'enregistrement actuel, l'appel GetBookmark, qui enregistre la valeur du signet à un objet d' CDBVariant . Ultérieurement, vous pouvez revenir à cet enregistrement en appelant SetBookmark à la valeur du signet enregistrée.
Notes
Après certaines opérations de recordset, vous devez vérifier la persistance de signet avant d'appeler SetBookmark.Par exemple, si vous récupérez un signet avec GetBookmark puis appelez Requery, le signet peut plus être valide.Appelez CDatabase::GetBookmarkPersistence pour vérifier si vous pouvez appeler sans risque SetBookmark.
Pour plus d'informations sur les signets et la navigation au sein d'un recordset, consultez les articles recordset : Signets et positions absolues (ODBC) et recordset : Défilement (ODBC).
Exceptions
Cette méthode peut lever des exceptions de type CDBException* et CMemoryException*.
Configuration requise
Header: afxdb.h