CDatabase::OpenEx

virtual bool OpenEx (lpctstrdwOptions, dwordlpszConnectString= 0);
(CDBException, CMemoryException) atmak;

Dönüş değeri

Bağlantı başarıyla yapıldıktan, sıfır olmayan; Aksi halde 0 kullanıcı seçerse, daha fazla bağlantı bilgilerini soran bir iletişim kutusu görüntülendiğinde iptal edin. Diğer tüm durumlarda, çerçeve bir istisna atar.

Parametreleri

lpszConnectString

Bir odbc bağlantı dizesi belirtir. Bu, bir kullanıcı kimliği ve parola gibi isteğe bağlı diğer bilgilerin yanı sıra, veri kaynağı adını içerir. Örneğin, "dsn = SQLServer_Source;UID = SA;pwd = abc123 "olası bağlantı dizesi olan. Not bir veri kaynağı iletişim kutusu boş lpszConnectStringiçin başarılı olursa bir veri kaynağı seçmek için kullanıcı ister.

dwOptions

Aşağıdaki değerleri bir birleşimini belirtir bir bit maskesi. Varsayılan değer 0 ' dır veritabanı olarak açılacak anlamı yazma erişimi ile paylaşılan, odbc imleç kitaplığı dll yüklenmeyecek ve sadece yoksa bağlantıyı yapmak için yeterli bilgi odbc bağlantı iletişim kutusu görüntülenir.

Açıklamalar

Yeni oluşturulmuş bir CDatabase nesnesi başlatılamıyor bu üye işlevini çağırın. Bir recordset nesnesi oluşturmak için kullanmadan önce veritabanı nesnesi başlatılmalıdır.

OpenEx arama lpszConnectString parametre bağlantı yapmak için yeterli bilgi içermiyorsa, CDatabase::noOdbcDialog ya da CDatabase::forceOdbcDialog dwOptions parametrede ayarladığınız değil sağlanan odbc sürücüsü kullanıcıdan gerekli bilgileri almak için bir iletişim kutusu açar. OpenExaradığınızda, bağlantı dizesi, lpszConnectString, özel CDatabase nesnesinde depolanır ve GetConnect üye işlevini çağırarak kullanılabilir.

İsterseniz önce bir parola gibi kullanıcı bilgilerini almak için OpenEx arayın ve bu bilgileri OpenExiçin geçiş bağlantı dizesini ekleyin, kendi iletişim kutusunu açabilirsiniz. Ya da uygulama OpenEx bir CDatabase nesnesine çağrı sonraki yeniden böylece geçmek bağlantı dizesini kaydetmek isteyebilirsiniz.

Birden çok düzeyde giriş yetkilendirme (her biri için farklı bir CDatabase nesnesi) için bağlantı dizesini kullanabilirsiniz veya diğer veri kaynağı özgü bilgileri iletmek için. Hakkında daha fazla bilgi için bağlantı dizeleri, bkz: Bölüm 5 odbc sdk Programcı Başvurusu.

Örneğin, dbms ana kullanılamıyorsa, bağlantı girişimi zaman aşımına mümkündür. Bağlantı girişimi başarısız olursa, OpenEx bir CDBException atar.

Örnek

/ / CDatabase bir nesneyi katıştırma
/ / Belge sınıfı
CDatabase m_dbCust;

/ / &Nesnesine bağlamak a / / salt okunur veri kaynağı nerede
/ / odbc bağlantısı iletişim kutusu
/ / her zaman gizli kalır
m_dbCust.OpenEx (_t ("dsn = mydatasource;UID = JOES "),
 nbsp;               CDatabase::openReadOnly |
                 CDatabase::noOdbcDialog)

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

Ayrıca bkz: CDatabase::Open, CDatabase::CDatabase, CDatabase::Close, CDBException, CRecordset::Open

Index