CDaoQueryDef

CDaoQueryDef nesnesi, bir sorgu tanımı, ya da "querydef" genellikle bir veritabanına kaydedilen gösterir. Querydef sorgu ve "Oluşturma" ve "odbc zaman aşımı." gibi özellikleri açıklar sql deyimini içeren bir veri erişim nesnesi olduğu Kaydetmeden geçici querydef nesneleri oluşturabilirsiniz, ancak uygun — ve daha verimli — sık kaydetmek için veritabanı sorguları yeniden. Onun kaydedilen querydefs içeren QueryDef derlemesini adlı bir koleksiyon, bir CDaoDatabase nesnesi tutar.

&Notnbsp;  dao veritabanı sınıfları, açık veritabanı bağlantısı (odbc) tabanlı mfc veritabanı sınıflarını farklıdır. Tüm dao veritabanı sınıf isimleri "CDao" öneki var. Hala dao sınıfları ile odbc veri kaynaklarına erişim olabilir. Genel olarak, dao üzerinde temel mfc sınıflar daha daha odbc tabanlı mfc sınıflar yetenekli; dao tabanlı sınıflar aracılığıyla kendi veritabanı motoru ile odbc sürücüleri de dahil olmak üzere, verilere erişebilir. dao tabanlı sınıflar da dao doğrudan aramak zorunda kalmadan sınıfları ile tablolar ekleme gibi veri tanımlama dili (ddl) işlemlerini destekler.

Kullanım

QueryDef nesneleri ya da bir sorgu kaydedilmiş mevcut ile çalışmak için veya yeni bir oluşturmak için kaydedilmiş sorgu veya geçici sorgu kullanın:

  1. Her durumda, öncelikle sorguya ait CDaoDatabase nesne işaretçisi sağlayan bir CDaoQueryDef nesnesi oluşturmak.

  2. Ne istediğinize bağlı olarak aşağıdakilerden yapın:
    • Varolan kaydedilmiş bir sorgu kullanmak için kaydedilmiş sorgunun adını sağlayarak querydef nesnesinin Open üye işlevini çağırın.

    • Yeni kaydedilen sorgu oluşturmak için querydef nesnesinin Create üye işlevi, sorgu adı arayın. Sonra da veritabanının QueryDefs derlemesine ekleyerek sorguyu kaydetmek için Append diyoruz. Querydef açık bir devlet olarak koyar Oluştur çağırmadan sonra size açmak çağrısı değil bu yüzden Oluştur.

    • Geçici bir querydef oluşturmak için Creatediyoruz. Sorgu adı boş bir dize geçmektedir. Append deme.

Bir querydef nesnesi kullanılarak bitirdikten sonra onun yakın üye işlevini çağırır; querydef nesnesi yok.

İpucu   Kaydedilmiş sorguları oluşturmak için en kolay yolu, bunları oluşturmak ve bunları kullanan Microsoft Access veritabanınızda depolamak etmektir. Sonra açmak ve onları mfc kodunuzu kullanın.

Amaçları

Bir querydef nesnesinin aşağıdaki amaçlar için kullanabilirsiniz:

Sorgu seçin, eylem, çapraz, silme, güncelleme dahil olmak üzere, her tür için bir querydef nesnesini kullanmak, ekleme, tablo oluşturma, veri tanımı, sql doğrudan, Birliği ve sorgu toplu. Sorgu türü sql deyimi sağladığınız içerik tarafından belirlenir. Sorgu türleri hakkında daha fazla bilgi için bkz: Execute ve GetType üye işlevler. Kayıt kümeleri, satır döndüren için yaygın olarak kullanılır, genellikle o select kullanarak sorgular... DAN anahtar kelimeler. Execute , toplu işlemler için en yaygın olarak kullanılır. Daha fazla bilgi için bkz: Execute ve CDaoRecordset.

QueryDefs ve bağlanım

Bir CDaoRecordset nesnesi oluşturmak üzere querydef nesnesini kullanmak için genellikle oluşturun veya querydef yukarıda açıklandığı gibi açın. Ardından CDaoRecordset::Openaradığınızda, querydef nesnesi için bir işaretçi geçen bir recordset nesnesi oluşturur. Size geçmek querydef açık durumda olmalıdır. Daha fazla bilgi için bkz: sınıfın CDaoRecordset.

Querydef açık durumda değilse, bir kayıt (bir querydef en yaygın kullanımı) oluşturmanız için kullanamazsınız. Açın veya oluşturun querydef açık bir duruma koymak.

Harici veritabanları

QueryDef nesneleri, bir dış veritabanı altyapısı native sql diyalekt kullanımı tercih edilen yoludur. Örneğin, (kullanılan Microsoft sql Server gibi) Transact sql sorgusu oluşturup, bir querydef nesnesinde saklayabilirsiniz. Microsoft Jet veritabanı motoru dayalı olmayan bir sql sorgusu kullanmanız gerektiğinde, dış veri kaynağına işaret bağlantı dizesi sağlamalısınız. Geçerli sorgu dizeleri atla veritabanı altyapısı bağlanmak ve sorguyu doğrudan dış veritabanı sunucusu için işleme geçiş.

İpucu   odbc tablolarla çalışmak için tercih edilen yolu onları bir Microsoft Jet eklemektir (.mdb) veritabanı. Daha fazla bilgi için bkz: yazı dao dış: dış veri kaynakları ile çalışma Visual c++ Programcı Kılavuzu.

Querydefs hakkında daha fazla bilgi için bkz: yazı dao Querydef Visual c++ Programcı Kılavuzu. İlgili bilgiler için bkz: "QueryDef nesnesi", "QueryDefs Collection" ve "Erişim harici veritabanları ile dao" dao Yardım konuları.

# include lt;afxdao.h>

Sı&nıf üyeleri |nbsp; Temel sınıf | Hiyerarşi çizelgesi

Ör&neklerinbsp; mfc örnek DAOVIEW | mfc örnek daotable

Ayrıca bkz: CDaoRecordset, CDaoDatabase, CDaoTableDef, CDaoException

Index