形式 1
>>---EXEC SQL---CONNECT TO---.-------------.-------------> +-data_source-+ >--.------------.------USER-.-------------------.--------> +-AS db_name-+ +-user-.-----------++ +-.password-+ >-.--------------------.-.-----------------------------.-> +-WITH-.----.-PROMPT-+ +-RETURNING output_connection-+ +-NO-+ >------END-EXEC--------><
形式 2
>>---EXEC SQL---CONNECT user--.------------------------.-> +-IDENTIFIED BY password-+ +-------'/'password------+ >---.--------------.--------.--------------------.-------> +--AT db_name--+ +--USING data_source-+ >---.----------------------.-----------------------------> +--WITH-.----.-PROMPT--+ +-NO-+ >---.-----------------------------.---END-EXEC--->< +-RETURNING output_connection-+
形式 3
>>----EXEC SQL---CONNECT WITH PROMPT--------------------> >---.------------------------------.---END-EXEC---->< +-RETURNING output_connection -+
形式 4
>>----EXEC SQL---CONNECT RESET-.--------.--END-EXEC----->< +--name--+
形式 5
>>----EXEC SQL--------CONNECT DSN input_connection-------> >---.------------------------------.-------END-EXEC----->< +-RETURNING output_connection -+
形式 6
>>----EXEC SQL---CONNECT USING input_connection----------> >-----.-------------.---.---------------------.----------> +--AS db_name-+ +--WITH-.----.-PROMPT-+ +-NO-+ >-----.------------------------------.------END-EXEC---->< +--RETURNING output_connection-+
data_source | ODBC データソースの名前を指定します。data_source を省略した場合は、 デフォルトの ODBC データソースが使用されます。データソースは、リテラルまたはホスト変数で指定できます。 |
db_name | 接続の名前を指定します。接続名は最大 30 字で、英数字とファイル名に有効な任意の記号が使用できます。最初の文字は数字以外の文字にする必要があります。接続名には、埋め込み SQL のキーワード、CURRENT、DEFAULT、ALL を使用しないでください。db_name を省略した場合は、 DEFAULT が使用されます。db_name はリテラルまたはホスト変数で指定できます。 |
user | 指定したデータソースに有効なユーザー ID を指定します。 |
password | 指定したユーザー ID に有効なパスワードを指定します。 |
output_connection | 特定のデータソースの接続に使用するために ODBC によって接続文字列で定義された PIC X(n) テキスト列を指定します。 その後に、この文字列を CONNECT USING 文の input_connection として指定できます。 |
input_connection | データソースに接続するために ODBC によって使用された接続情報を含む PIC X(n) テキスト列を指定します。テキスト列はリテラルまたはホスト変数で指定できます。 |
RESET | 指定した接続をリセット (切断) します。 |
name | name には、CURRENT、DEFAULT または ALL を指定できます。 |
CONNECT 文により、指定したユーザー ID とパスワードを使用した特定のデータベースに接続されます。
1 つの接続だけを使用する場合は、接続に名前を付ける必要はありません。複数の接続を使用する場合は、 各接続に名前を指定する必要があります。接続名はプロセス内で共通です。名前の付いた接続は、 別々にコンパイルされ、単一の実行可能モジュールにリンクしたプログラム間で共有できます。
CONNECT 文が正常に実行されると、すべてのデータベーストランザクションは、CONNECT RESET が最後に宣言されている場合以外は、 現在の接続となります。別の接続を使用するには、SET CONNECTION 文を使用する必要があります。
管理を簡素化するには、CONNECT DSN および CONNECT USING を使用します。
CONNECT TO、CONNECT、CONNECT DSN、CONNECT WITH PROMPT および CONNECT USING を使用すると、接続情報をアプリケーションに返すことができます。
備考
MOVE 'servername' TO svr MOVE 'username.password' TO usr EXEC SQL CONNECT TO :svr USER :usr END-EXEC
EXEC SQL CONNECT 'username.password' USING 'servername' END-EXEC
EXEC SQL CONNECT WITH PROMPT END-EXEC
EXEC SQL CONNECT RESET END-EXEC
EXEC SQL CONNECT USING 'FileDSN=Oracle8;PWD=tiger' END-EXEC
上記の例は、File DSN を使用します。
01 connectString PIC X(72) value 'DRIVER={Microsoft Excel Driver (*.xls)};' &'DBQ=c:\demo\demo.xls;' &'DRIVERID=22' . procedure division. EXEC SQL CONNECT USING :connectString END-EXEC
上記の例は、データソースを設定しないで Excel スプレッドシートに接続します。