CDatabase::Open

віртуальнийBOOLOpen (LPCTSTRlpszDSN,BOOLbExclusive = FALSE,BOOLbReadOnly = FALSE,LPCTSTR-lpszConnect = "ODBC;",BOOLbUseCursorLib=правда);
кинути ( CDBException, CMemoryException );

Значення, яке повертається

Ненульовий, якщо з'єднання успішно зроблено; в іншому випадку 0, якщо користувач вибирає скасувати, коли представлені у діалоговому вікні, що просять більше відомостей про підключення. У всіх інших випадках рамках кидає виключення.

Параметри

lpszDSN

Визначає ім'я джерела даних — ім'я зареєстровано ODBC через ODBC Адміністратор програми. Якщо вказано DSN значення в lpszConnect (у вигляді «DSN = lt; джерело даних > "), воно не визначається знову в lpszDSN. У цьому випадку, lpszDSN повинна бути NULL. В іншому випадку, ви можете передати NULL , якщо ви хочете, щоб представити користувача з джерела даних діалоговому вікні, в якому можна вибрати джерело даних. Докладніше перегляньте зауваження.

bExclusive

Не підтримується в цій версії бібліотеки класів. В даний час твердження не, Якщо цей параметр. Джерело даних, завжди відкриті, як загальні (не виключають).

bReadOnly

Правда , якщо ви маєте намір підключення до лише для читання і заборонити оновлення до джерела даних. Всі залежні набори записів наслідувати цей атрибут. За умовчанням є ПОМИЛКОВИМ.

lpszConnect

Визначає рядок підключення. Рядок підключення об'єднує дані, можливо, включаючи ім'я джерела даних, Ідентифікатора користувача дійсні на джерело даних, автентифікації користувача рядок (пароль, якщо джерело даних потрібно один) та інші відомості. Весь рядок підключення повинна починатись рядком "ODBC;" (великі або малі літери). "ODBC;" рядок використовується, щоб вказати, що підключення до джерела даних ODBC; це вгору сумісність, коли майбутні версії бібліотеки класів може підтримувати джерела даних не ODBC.

bUseCursorLib

Правда , якщо ви хочете ODBC курсор бібліотеки DLL завантаження. Бібліотеку курсора маски функціональність основного драйвера ODBC, ефективно запобігання використання dynasets (якщо драйвер підтримує їх). Тільки курсори, що підтримується, якщо завантажено бібліотеку курсора, статичні знімки і вперед лише курсорів. Значення за промовчанням – TRUE. Якщо планується створення набору записів об'єкта безпосередньо з CRecordset без отримання від нього, ви не повинні завантажити бібліотеку курсора.

Зауваження

Телефонуйте цієї функції-члена ініціалізувати новозбудований CDatabase об'єкт. Ваш об'єкт бази даних слід ініціалізувати до ви можете використовувати його для створення набору записів об'єкта.

Примітка   Виклик функції-члена OpenEx є кращим способом для підключення до джерела даних і ініціалізувати об'єкт бази даних.

Якщо параметри у відкритий виклик не містять достатньо інформації, щоб зробити з'єднання, драйвер ODBC відкриває діалогове вікно отримати необхідну інформацію від користувача. При виклику відкриті, ваш рядок підключення, lpszConnect, приватної зберігаються в об'єкті CDatabase і GetConnect член функції телефону.

Якщо ви хочете, можна відкрити свій власний діалоговому вікні перед тим, як телефонувати Відкрити для отримання інформації від користувача, такі як пароль, то додавання до рядок підключення, ви передаєте, щоб Відкрити. Або ви, можливо, захочете зберегти рядок підключення, ви передаєте, так що можна повторно використовувати його під час наступного заявку закликає відкритого об'єкта CDatabase.

Можна також використовувати рядок підключення декілька рівнів Логін авторизації (один для різних CDatabase об'єкт) або передати інших даних джерела конкретної інформації. Для отримання додаткових відомостей про рядки підключення, перегляньте розділ 5 в SDK програміста ODBC посилання.

Це можливо для спробу підключення до тайм-аут, якщо, наприклад, СУБД хост недоступний. Якщо не вдається спроба підключення, відкриті кидає CDBException.

Приклад

/ / Вставляти в об'єкт CDatabase
/ / у ваш клас документа
CDatabase m_dbCust;

/ / Підключення об'єкт на
/ / джерела даних (без пароля)
/ / з'єднання ODBC діалоговому вікні
/ / завжди залишаються прихованими
m_dbCust.Open (_T ("MYDATASOURCE"), FALSE,
 nbsp;             ПОМИЛКОВІ, _T ("ODBC;UID = JOES "),

// ...Або запит користувача для всіх
/ / про підключення
m_dbCust.Open (&NULL)

Огляд CDatabaseЧлени класу | Ієрархічна діаграма

Дивіться також CDatabase::OpenEx, CDatabase::CDatabase, CDatabase::Close, CDBException, CRecordset::Open

Index