DBFCONは、DBCHCLのConnect関数です。
DBFCONは、次のタスクを実行するために使用されます。
- 指定されたデータベース コンピュータへのログオン
- 指定されたサービスがそのセッションでのすべてのリクエストに対して使用されるようにするための調整
- CLIがセッションの文脈を格納するのに使用する内部的な制御構造の割り当て
CLIv2を使用すると、接続セッションごとにDBC.EventLog表のLogonSource列にユーザー固有の情報を追加することができます。 CLIv2は、LSINFO環境変数を介してこの情報にアクセスします。 環境変数を設定する方法は、プラットフォームのインプリメンテーションによって異なります。ユーザー固有のプラットフォーム環境に適したマニュアルを参照してください。
LogonSource列はVARCHAR(128)として定義された文字列であることに注意してください。 このため、LogonSource列の最大許容長は、127バイトです(最終バイトはnull終了子)。 LogonSource列が127バイトを超える場合は切り捨てられ、LSINFOは追加されません。 Logon Source列とLSINFO(プラス、ブランク区切り文字1文字)の合計長が127バイトを超える場合、LSINFOは追加されません。
機能
DBFCONは、次の機能を実行します。
- 文脈ブロックを取得して初期設定します。
- 必要に応じてDBCAREAを検証します。
アプリケーションでオプションの更新を要求していた場合には、オプションの設定/検証ロジックを実行します。
- バッファを取得/初期設定します。バッファの長さは、ユーザーが要求したサイズまたはデフォルトのサイズのどちらかです。
- リクエスト/取り出しバッファの実際の長さを設定します。
- アプリケーション プログラムでUser Exitオプションを要求した場合には、特殊なログオン文字列がCLIのUser Exit関数に送られます。
- リクエスト バッファ内のログオン(接続)リクエストおよび接続リクエスト パーセルをMTDPに送り、完了するまで待ちます。
- Run String Buffer Lengthフィールドが、バッファが実行文字列であり接続構造体ではないことを示している場合には、そのセッション用の接続構造体を作成します。
- 接続に成功した場合には、実セッション番号の出力引数と戻りコードを設定し、制御を呼び出し側に返します。
- Connectが処理に失敗した場合には、エラーを返します。実行文字列は、省略されれば、デフォルトでTeradata SQLの値になります。
接続リクエストの送信
接続リクエストを送るためには、以下の順序で操作します。
- DBFCON関数のDBCHCLを呼び出します。
- その戻りコードがゼロであることを確認します。
成功する接続操作
正常な接続処理を行なうためには、以下に示す順序で操作する必要があります。
- DBFCON関数のDBCHCLを呼び出します。
- その戻りコードがゼロであることを確認します。
- DBFFET関数のDBCHCLを呼び出します。
- その戻りコードがゼロであることを確認します。
- そのパーセルがErrorまたはFailureパーセルでないことを確かめます。
- DBFERQ関数のDBCHCLを呼び出します。
- その戻りコードがゼロであることを確認します。
インターフェース
DBFCONインターフェースは、次のとおりです。
関数: | DBFCON - Connect |
目的: | ログオンおよび実行 (SQLの'CONNECT'に類似) |
パラメータ: | DBCAREAを指すstruct DBCAREA*dbcptrポインタ |