Partage via


Récupération des signets

Si l’application utilise des signets, elle doit définir l’attribut d’instruction SQL_ATTR_USE_BOOKMARKS sur SQL_UB_VARIABLE avant de préparer ou d’exécuter l’instruction. Cela est nécessaire, car la création et la maintenance des signets peuvent être une opération coûteuse. Les signets doivent donc être activés uniquement lorsqu’une application peut les utiliser.

Les signets sont retournés sous forme de colonne 0 du jeu de résultats. Il existe trois façons pour une application de les récupérer :

  • Lier la colonne 0 du jeu de résultats. SQLFetch ou SQLFetchScroll retourne les signets pour chaque ligne de l’ensemble de lignes, ainsi que les données d’autres colonnes liées.

  • Appelez SQLSetPos pour positionner une ligne dans l’ensemble de lignes, puis appelez SQLGetData pour la colonne 0. Si un pilote prend en charge les signets, il doit toujours prendre en charge la possibilité d’appeler SQLGetData pour la colonne 0, même s’il n’autorise pas les applications à appeler SQLGetData pour d’autres colonnes avant la dernière colonne liée.

  • Appelez SQLBulkOperations avec l’argument Opération défini sur SQL_ADD et la colonne 0 liée. Le curseur insère la ligne et retourne le signet de la ligne dans la mémoire tampon liée.