CDaoRecordset::Seek

BOOL chercher (LPCTSTR lpszComparison, COleVariant * pKey1, COleVariant * pKey2 = NULL, COleVariant * pKey3 = NULL) ;
jeter (CDaoException, CMemoryException);

BOOL chercher (LPCTSTR lpszComparison, COleVariant * pKeyArray, mot nKeys);
jeter (CDaoException, CMemoryException) ;

Valeur de retour

Différent de zéro si les enregistrements correspondants sont trouvés, sinon 0.

Paramètres

lpszComparison

Une des expressions de chaîne suivantes: « lt; », » < = ", « = »," > = ", ou" > ».

pKey1

Pointeur vers un COleVariant dont la valeur correspond au premier champ dans l'index. Obligatoire.

pKey2

Pointeur vers un COleVariant dont la valeur correspond à la deuxième champ dans l'index, le cas échéant. Par défaut, NULL.

pKey3

Pointeur vers un COleVariant dont la valeur correspond au troisième champ dans l'index, le cas échéant. Par défaut, NULL.

pKeyArray

Pointeur vers un tableau de variantes. La taille du tableau correspond au nombre de champs dans l'index.

nKeys

Un entier correspondant à la taille du tableau, qui est le nombre de champs dans l'index.

&Notenbsp ;  Ne spécifiez pas de caractères génériques dans les keys. Caractères génériques provoquera Seek ne retourner aucun enregistrements correspondants.

Remarques

Appelez cette fonction membre pour localiser le dossier dans un objet recordset de type table indexée qui répond aux critères spécifiés pour le courant de l'index et faire enregistrer l'enregistrement en cours. Utilisez la deuxième version (tableau) de chercher à gérer les index de quatre champs ou plus.

Seek permet à haute performance index, la recherche sur les Jeux d'enregistrements de type table. Vous devez définir l'index en cours en appelant SetCurrentIndex avant d'appeler Seek. Si l'index identifie un champ clé non unique ou des champs, Seek localise le premier enregistrement qui satisfait aux critères. Si vous ne définissez pas un indice, une exception est levée.

Notez que si vous créez pas un jeu d'enregistrements de l'UNICODE, les objets COleVariant doivent être explicitement déclarées ANSI. Cela peut se faire en utilisant le formulaire de vtSrc ) de lpszSrc, COleVariant::COleVariant( ) du constructeur avec vtSrc la valeur VT_BSTRT (ANSI) ou en utilisant la fonction COleVariant SetString() lpszSrc, vtSrc ) avec vtSrc la valeur VT_BSTRT.

Lorsque vous appelez Seek, vous passez une ou plusieurs des valeurs clés et un opérateur de comparaison (« lt; », » < = ","="," > = ", ou" > "). Seek recherche à travers les champs clés spécifiés et localise le premier enregistrement qui répond aux critères spécifiés par lpszComparison et pKey1. Une fois trouvé, Seek retourne zéro et rend l'enregistrement actuel. Si la recherche ne parvient pas à localiser un match, Seek retourne zéro, et l'enregistrement en cours n'est pas défini. Lorsque vous utilisez DAO directement, vous devez vérifier explicitement la propriété NoMatch.

Si lpszComparison est "=", nbsp ; « > = », ou « > », Seek commence au début de l'index. Si lpszComparison est « < » ou « < = ", Seek commence à la fin de l'index et les recherches vers l'arrière à moins qu'il y a double emploi avec les entrées d'index à la fin. Dans ce cas, Seek commence à une entrée arbitraire parmi les entrées d'index en double à l'extrémité de l'index.

Il n'a pas à être un enregistrement en cours lorsque vous utilisez Seek.

Pour localiser un enregistrement dans une feuille de réponse dynamique de type ou un objet recordset de type instantané qui satisfait à une condition spécifique, utilisez les opérations de recherche. Pour inclure tous les enregistrements, non seulement ceux qui satisfont à une condition spécifique, utilisez les opérations de déplacement pour déplacer d'un enregistrement à.

Impossible d'appeler Seek sur un tableau ci-joint de n'importe quel type car les tableaux ci-joint doivent être ouvert comme type de feuille de réponse dynamique ou les Jeux d'enregistrements de type instantané. Cependant, si vous appelez CDaoDatabase::Open pour ouvrir directement une base de données ISAM installable, vous pouvez appeler Seek sur des tables dans la base de données, bien que le rendement peut être lent.

Pour plus d'informations sur la recherche de documents, consultez l'article jeu d'enregistrements DAO : Navigation de jeu d'enregistrements dans le Guide du programmeur Visual C++. Pour plus d'informations, consultez la rubrique « Chercher méthode » dans l'aide de DAO.

Aperçu de CDaoRecordset |  ; Membres de la classe | Graphique de la hiérarchie

Voir aussinbsp ;CDaoRecordset::FindFirst, CDaoRecordset::FindLast, CDaoRecordset::Find&Next, CDaoRecordset::FindPrev, CDaoRecordset::Move, CDaoRecordset::MoveFirst, CDaoRecordset::MoveLast, CDaoRecordset::MoveNext, CDaoRecordset::MovePrev, COleVariant::COleVariant, COleVariant::SetString

Index