sqlLib.connect() システム関数は、実行時にデータベースに対して名前付きの接続を作成し、その接続をアクティブにします。
各実行単位には 1 つの現行接続があります。 デフォルトで、この接続にはデータベースに指定した名前が付いています。この名前は、sqlLib.defineDatabaseAlias() 関数を使用して変更できます。
sqlLib.connect() 関数は、ワークベンチの「新規接続」ウィザードから作成したデフォルトの SQL 接続をオーバーライドします。 このウィザードについて詳しくは、「EGL プログラマー・ガイド」の SQL データベース接続の作成 を参照してください。 VisualAge® Generator または EGL バージョン 5 からコードをマイグレーションしている場合は、『connectionService()』を参照してください。
この sqlLib.connect() 関数は値を戻しませんが、sqlLib.sqlData にシステム変数を設定します。 『sqlLib.sqlData (EGL システム変数)』を参照してください。
sqlLib.connect(
database STRING in,
userID STRING in,
password STRING in
[, disconnectOption DisconnectKind in
[, isolationLevel IsolationLevelKind in
[, commitControl CommitControlKind in]]]] )
このパスワードは、関数にストリング・リテラルを渡すと自動的に暗号化されます。 詳しくは、「EGL プログラマー・ガイド」の パスワードの暗号化 を参照してください。 このトピックの『互換性』セクションも参照してください。
type1 を commitScope の値として使用する場合、disconnectOption パラメーターの値を explicit に設定 (デフォルトに設定してもかまいません) する必要があります。
詳しくは、Oracle が提供する JDBC の資料を参照してください。
一時的に autoCommit から noAutoCommit に切り替えることもできます。 詳しくは、『beginDatabaseTransaction()』を参照してください。
以下に、sqlLib.connect() 関数の例を示します。
sqlLib.connect(myDatabase, myUserid, myPassword);
| プラットフォーム | 問題 |
|---|---|
| COBOL 生成 | すべての sqlLib.connect() パラメーター (database を除く) は無視されます。 |
| Java 生成 | Tomcat J2EE サーバーは、sqlLib.connect() 関数の userID および password は無視し、そのサーバー構成にある値を使用します。 |
| J2EE | デフォルトをデータ・ソース (JNDI 名前用に定義済み) に関連付けられたユーザー ID およびパスワードにするには、userID および password に対してブランクまたは空ストリング ("") を使用します。 |