仮想BOOLオープン (LPCTSTRlpszDSN,BOOLbExclusive FALSEのブール値bReadOnly = FALSEのLPCTSTRlpszConnect = "ODBC;"、BOOLbUseCursorLib真の==);
スロー ( CDBException、 CMemoryException );
戻り値
接続が正常に確立されるそれ以外の場合、ユーザーが選択した場合は 0 を接続の詳細を確認するダイアログ ボックスを表示するときをキャンセルします。他のすべてのケースでは、フレームワークが例外をスローします。
パラメーター
lpszDSN
データ ソース名を指定します ? 名前登録と ODBC、ODBC アドミニストレーター プログラムを介して。DSN の値がlpszConnectで指定されているかどうか (フォームで「DSN lt; = データ ソース >「)、それ再びlpszDSNで指定する必要ありますはありません。この例では、 lpszDSNをNULLにする必要があります。それ以外の場合、データ ソースでユーザーが選択できるデータ ソース] ダイアログ ボックスで、ユーザーが存在する場合はNULLに渡すことができます。詳細については、「解説」を参照してください。
bExclusive
このバージョンのクラス ライブラリでサポートされていません。現在、このパラメーターがTRUEの場合、アサーションは失敗します。データ ソースは、常に (排他的) 共有として開く。
bReadOnly
読み取り専用にして、データ ソースの更新を禁止するには、接続をする場合はTRUEです。すべて依存レコード セットは、この属性を継承します。既定値はFALSEです。
lpszConnect
接続文字列を指定します。接続文字列可能性、データ ソース名、データ ソース、ユーザー認証文字列 (データ ソースで必要な場合、パスワード、)、およびその他の情報に関する有効なユーザ ID などの情報を連結します。全体の接続文字列は、文字列"ODBC;"を付ける必要があります。(大文字または小文字)。"ODBC;"文字列を使用して、接続を ODBC データ ソースに; であることを示す非 ODBC データ ソースはクラス ライブラリの将来のバージョンがサポート可能性がありますこの上向き互換性のとき。
bUseCursorLib
ロードするには、ODBC カーソル ライブラリ DLL をする場合はTRUEです。カーソル ライブラリ (ドライバーがサポートしている場合は) ダイナセットの使用を効果的に防止、基になる ODBC ドライバーの一部の機能をマスクします。カーソル ライブラリが読み込まれている場合はサポートのみのカーソルは、静的なスナップショットと前方参照のみのカーソルです。既定値はTRUEです。それから派生することがなく直接CRecordsetからレコード セット オブジェクトを作成する場合は、カーソル ライブラリを読み込めません必要があります。
解説
新しく作成されたCDatabaseオブジェクトを初期化します。それを使用すると、レコード セット オブジェクトを構築する前に、データベース オブジェクトを初期化する必要があります。
注特価;OpenExメンバー関数の呼び出しをデータ ソースに接続し、データベース オブジェクトを初期化する優先の方法です。(&N)。
パラメーター、 Openの呼び出しで、接続するには、十分な情報がない場合は、ODBC ドライバーに必要な情報をユーザーから取得するダイアログ ボックスが開きます。オープン呼び出し、接続文字列、 lpszConnect、非公開CDatabaseオブジェクトに格納されているし、 GetConnectメンバー関数を呼び出すことによって利用可能です。
ご希望の場合は、パスワードなどのユーザーから情報を取得する開くを呼び出すし、情報をオープンに渡す接続文字列に追加する前に、独自のダイアログ ボックスを開くことができます。または、アプリケーション開いている CDatabaseオブジェクトを呼び出す次の時間それを再利用できるように接続文字列を保存する必要があります。
ログイン認証ごとに別のCDatabaseオブジェクト) の複数のレベルの接続文字列を使用することもことができますまたは他のデータ ソース固有の情報を伝えるために。詳細については文字列を接続、章 5、 ODBC SDK programmer's Referenceを参照してください。
たとえば、DBMS のホストが表示されない場合は、接続の試行がタイムアウトを可能です。接続の試行が失敗した場合は、開いて CDBExceptionをスローします。
例
・ CDatabase オブジェクトを埋め込む//ドキュメント クラスCDatabase m_dbCust;・ オブジェクトに接続します。//データ ソース (パスワードなし)//[ODBC 接続] ダイアログ ボックス//常に隠されたままm_dbCust.Open (_T ("MYDATASOURCE")、FALSE特価;FALSE の場合、_T ("ODBC;UID = JOES」)、// ...または、クエリのすべてのユーザー//接続情報m_dbCust.Open (NULL)(&N)
CDatabase 概要|nbsp;クラス メンバー |階層図(&N)
参照特価;:Openex、 CDatabase::CDatabase、 CDatabase::Close、 CDBException、 CRecordset::Open(&N)