名前を指定した接続を現在の接続として設定します。
構文:
>>--EXEC SQL--SET CONNECTION---.-name-----.---END-EXEC--><
+-DEFAULT--+
パラメーター:
name |
データベース接続の名前を指定します。前の CONNECT 文で指定された接続名と一致している必要があります。この名前には、接続のリテラル名、または文字値を含むホスト変数の名前のどちらかを指定できます。 |
DEFAULT |
CONNECT 文で接続名を省略して接続を確立した場合は、「DEFAULT」として確立した接続を参照できます。 |
例:
EXEC SQL CONNECT TO "srv1" AS server1 USER "sa." END-EXEC
EXEC SQL CONNECT TO "srv2" AS server2 USER "sa." END-EXEC
* server2 is the current connection
EXEC SQL CREATE TABLE phil1
(charbit CHAR(5))
END-EXEC
IF SQLCODE NOT = ZERO
DISPLAY 'Error: Could not create table.'
DISPLAY SQLERRMC
DISPLAY SQLERRML
EXEC SQL DISCONNECT ALL END-EXEC
STOP RUN
END-IF
EXEC SQL INSERT INTO phil1 VALUES('hello') END-EXEC
IF SQLCODE NOT = ZERO
DISPLAY 'Error: Could not insert data.'
DISPLAY SQLERRMC
DISPLAY SQLERRML
EXEC SQL DISCONNECT ALL END-EXEC
STOP RUN
END-IF
* set the current connection to server1
EXEC SQL SET CONNECTION server1 END-EXEC
EXEC SQL
SELECT first_name
INTO :fname
FROM staff
WHERE staff_id = 10
END-EXEC
DISPLAY fname ' says ' WITH NO ADVANCING
* set the current connection back to server2
EXEC SQL SET CONNECTION server2 END-EXEC
EXEC SQL
SELECT charbit
INTO :fname
WHERE charbit = 'hello'
FROM phil1
END-EXEC
DISPLAY fname
EXEC SQL DISCONNECT server1 END-EXEC
EXEC SQL DISCONNECT server2 END-EXEC
STOP RUN
説明:
複数のコンパイル モジュール間で接続している場合には、名前を指定した接続を使用する必要があります。