Aracılığıyla paylaş


Sihirbaz Kullanmadan bir Tüketici Oluşturma

Aşağıdaki örnekte, mevcut bir ATL projesine OLE DB tüketici desteği eklediğiniz varsayılır. Bir MFC uygulamasına OLE DB tüketici desteği eklemek istiyorsanız, gerekli tüm desteği oluşturan ve uygulamayı yürütmek için gereken MFC yordamlarını çağıran MFC Uygulama Sihirbazı'nı çalıştırmanız gerekir.

ATL OLE DB Tüketici Sihirbazı'nı kullanmadan OLE DB tüketici desteği eklemek için:

  • pch.h dosyanıza aşağıdaki #include deyimleri ekleyin:

    #include <atlbase.h>
    #include <atldbcli.h>
    #include <atldbsch.h> // if you are using schema templates
    

Program aracılığıyla bir tüketici genellikle aşağıdaki işlem dizisini gerçekleştirir:

  1. Sütunları yerel değişkenlere bağlayan bir kullanıcı kayıt sınıfı oluşturun. Bu örnekte, CMyTableNameAccessor kullanıcı kayıt sınıfıdır (bkz . Kullanıcı Kayıtları). Bu sınıf sütun eşlemesini ve parametre eşlemesini içerir. Sütun eşlemenizde belirttiğiniz her alan için kullanıcı kayıt sınıfında bir veri üyesi bildirme; bu veri üyelerinin her biri için bir durum veri üyesi ve uzunluk veri üyesi de bildirin. Daha fazla bilgi için bkz . Sihirbaz Tarafından Oluşturulan Erişimcilerde Alan Durumu Veri Üyeleri.

    Not

    Kendi tüketicinizi yazarsanız, veri değişkenleri durum ve uzunluk değişkenlerinden önce gelmelidir.

  • Veri kaynağı ve oturum örneği oluşturma. Ne tür erişimci ve satır kümesi kullanılacağına karar verin ve ardından CCommand veya CTable kullanarak bir satır kümesinin örneğini açın:

    CDataSource ds;
    CSession ss;
    class CMyTableName : public CCommand<CAccessor<CMyTableNameAccessor>>
    
  • COM'u başlatmak için çağrısı CoInitialize . Bu, ana kodda çağrılır. Örneğin:

    HRESULT hr = CoInitialize(NULL);
    
  • CDataSource::Open veya çeşitlemelerinden birini çağırın.

  • Veri kaynağına bir bağlantı açın, oturumu açın ve satır kümesini açın ve başlatın (ve bir komut varsa da yürütür):

    hr = ds.Open();
    hr = ss.Open(ds);
    hr = rs.Open();            // (Open also executes the command)
    
  • İsteğe bağlı olarak, kullanarak CDBPropSet::AddProperty satır kümesi özelliklerini ayarlayın ve parametresi olarak rs.Opengeçirin. Bunun nasıl yapıldığını gösteren bir örnek için Bkz GetRowsetProperties . Tüketici Sihirbazı Tarafından Oluşturulan Yöntemler.

  • Artık verileri almak/işlemek için satır kümesini kullanabilirsiniz.

  • Uygulamanız tamamlandığında bağlantıyı, oturumu ve satır kümesini kapatın:

    rs.Close();
    ss.Close();
    ds.Close();
    

    Bir komut kullanıyorsanız, 'den sonra Closeçağrısı ReleaseCommand yapmak isteyebilirsiniz. CCommand::Close içindeki kod örneği ve ReleaseCommandöğesinin nasıl çağrılacaklarını Close gösterir.

  • COM'u başlatmayı kaldırma çağrısı CoUnInitialize . Bu, ana kodda çağrılır.

    CoUninitialize();
    

Ayrıca bkz.

OLE DB Tüketicisi Oluşturma