CDaoRecordset::Seek

bool Seek (lpctstr lpszComparison, COleVariant * pKey1, COleVariant * pKey2 = null, COleVariant * pKey3 ««= NULL);
throw (CDaoException, CMemoryException);

bool Seek (lpctstr lpszComparison, COleVariant * pKeyArray, kelime nKeys);
(CDaoException, CMemoryException) atmak;

Dönüş değeri

Eğer eşleşen kayıtları bulundu, aksi takdirde 0 sıfır.

Parametreleri

lpszComparison

String ifadeler biri: "lt;", "< =", "=", "> =", veya ">".

pKey1

Dizin içindeki ilk alana değeri karşılık gelen bir COleVariant için bir işaretçi. Gerekli.

pKey2

Değeri Index, ikinci alan varsa karşılık bir COleVariant için bir işaretçi. NULL varsayılan.

pKey3

Değeri dizin üçüncü alanda varsa karşılık bir COleVariant için bir işaretçi. NULL varsayılan.

pKeyArray

Değişik bir dizi için bir işaretçi. Dizi boyutu alanlarını dizin numarasını karşılık gelir.

nKeys

Alan dizin sayısı olan dizinin boyutuna karşılık gelen tamsayı.

&Notnbsp;  Joker karakter anahtarlar belirtmeyin. Joker karakterler hiçbir eşleşen kayıtları aramak neden olur.

Açıklamalar

Belirtilen ölçütleri geçerli dizine ve kaydı geçerli kayıt yapmak karşılayan bir dizinli tablo türü recordset nesnesinde kayıt bulmak için bu üye işlevini çağırın. Dizinler dört alana ya da daha fazla işlemek için Seek ikinci (dizi) sürümünü kullanın.

Seek yüksek performanslı dizin tablo türü Recordset'ler üzerinde arama sağlar. Seekçağırmadan önce SetCurrentIndex çağırarak geçerli dizini ayarlamanız gerekir. Dizin benzer anahtar alanı veya alanlarına tanımlarsa, Arama ölçütlerini karşılayan ilk kaydı bulur. Bir dizini ayarlamazsanız, bir özel durum.

Not bir UNICODE recordset değil oluşturuyorsanız, COleVariant nesneleri açıkça ANSI bildirilmesi gerekir. Bu vt_bstrt için (ANSI) ayarlamak vtSrc ile COleVariant::COleVariant( lpszSrc, vtSrc ) şeklinde Oluşturucu kullanarak ya da vt_bstrt için ayarlamak vtSrc ile Set( lpszSrc, vtSrc ) COleVariant işlevi kullanılarak yapılabilir.

Seekaradığınızda, bir veya daha fazla anahtar değerleri ve karşılaştırma işleci geçmek ("lt;", "< =", "=", "> =", veya ">"). Seek belirtilen anahtar alanları arar ve lpszComparison ve pKey1tarafından belirtilen ölçütleri karşılayan ilk kaydı bulur. Bir kez kurmak, aramak , sıfır döndürür ve bu kayıt geçerli yapar. Bir eşleşme bulmak Arama başarısız olursa, Arama sıfır döndürür ve geçerli kayıt tanımsızdır. dao doğrudan kullanırken, NoMatch özelliği açıkça kontrol etmelisiniz.

LpszComparison ise, nbsp =""; "> =", veya ">", Arama , dizin başında başlar. LpszComparison ise "<" veya "< =", Arama başlatır at the end of the index ve aramaları yoksa geriye yinelenen dizin girişlerini sonunda. Bu durumda, yinelenen dizin girdilerini dizin sonunda arasında rasgele giriş Arama başlar.

Orada yok Seek kullandığınızda geçerli kayıt olmak için.

Bir türündeki veya belirli bir koşulu karşılayan anlık görüntü türünde recordset içinde bir kayıt bulmak için Bul işlemleri kullanın. Tüm kayıtları içermek için sadece belirli bir koşulu karşılayan bu taşıma işlemlerinde kayıttan kayda gitmek için kullanın.

Ekli Tablo türündeki veya anlık görüntü türü kayıt kümesi olarak açılması gerekir çünkü herhangi türde bir bağlı tablo Arama çağrı yapamazsınız. Doğrudan bir yüklenebilir ISAM veritabanı açmak için CDaoDatabase::Open çağırırsanız, ancak performans yavaş olabilir ancak Arama , veritabanındaki tablolarda arayabileceğiniz.

Kayıtları bulma hakkında daha fazla bilgi için bkz: yazı dao kayıt kümesi: kayıt gezinti Visual c++ Programcı Kılavuzu. İlgili bilgiler için "Yöntem aramak" dao Yardım konusuna bakın.

CDaoRecordset ge&nel bakış |nbsp; Sınıf üyeleri | Hiyerarşi çizelgesi

Ayrıca bkz:nbsp;CDaoRecordset::FindFirst, CDaoRecordset::FindLast, CDaoRecordset::Find&Next, CDaoRecordset::FindPrev, CDaoRecordset::Move, CDaoRecordset::MoveFirst, CDaoRecordset::MoveLast, CDaoRecordset::MoveNext, CDaoRecordset::MovePrev, COleVariant::COleVariant, COleVariant::SetString

Index