Share via


Procédure : extraire les lignes au moyen de signets (OLE DB)

Le consommateur attribue au champ dwFlag de la structure de liaison la valeur DBCOLUMNSINFO_ISBOOKMARK pour indiquer que la colonne est utilisée comme signet. Le consommateur définit également la propriété d'ensemble de lignes DBPROP_BOOKMARKS avec la valeur VARIANT_TRUE. Cela permet à la colonne 0 d'être présente dans l'ensemble de lignes et d'utiliser ensuite IRowsetLocate::GetRowsAt pour extraire les lignes démarrant avec la ligne spécifiée par l'offset d'un signet.

Un exemple complet montre comment extraire les lignes au moyen d'un signet. L'exemple de code complet se trouve dans le fichier GetRowsUsingBookmark.cpp. Vous pouvez télécharger une archive contenant l'exemple à partir de la page de téléchargements SQL Server sur MSDN. Dans cet exemple, la cinquième ligne est extraite du jeu de résultats produit par l'exécution d'une instruction SELECT.

Cet exemple a été développé à l'aide de Microsoft Visual C++ 2005.

Remarque relative à la sécuritéRemarque relative à la sécurité

Si possible, utilisez l'authentification Windows. Si l'authentification Windows n'est pas disponible, invitez les utilisateurs à entrer leurs informations d'identification au moment de l'exécution. Évitez de stocker ces informations dans un fichier. Si vous devez rendre les informations d'identification persistantes, chiffrez-les avec l'API de chiffrement Win32.

Pour extraire des lignes à l'aide de signets

  1. Établissez une connexion à la source de données.

  2. Définissez la propriété DBPROP_IRowsetLocate de l'ensemble de lignes avec la valeur VARIANT_TRUE.

  3. Exécutez la commande.

  4. Définissez le champ dwFlag de la structure de liaison avec l'indicateur DBCOLUMNSINFO_ISBOOKMARK de la colonne qui sera utilisée comme signet.

  5. Utilisez IRowsetLocate::GetRowsAt pour extraire les lignes, en commençant par la ligne spécifiée par un offset du signet.