ページの先頭行へ戻る
Symfoware Server V11.0.1 セキュリティ運用ガイド
Symfoware

11.3 CONNECT文

機能

コネクションを接続します。

記述形式

一般規則

SQLサーバ名
  • SQLサーバ名は、ローカルにあるSymfoware/RDBと接続する場合とリモートにあるSymfoware/RDBと接続する場合で、指定する内容が異なります。

    • ローカルのSymfoware/RDBと接続する場合(マルチRDB運用でない場合)
      データベース名を指定します。

    • ローカルのSymfoware/RDBと接続する場合(マルチRDB運用の場合)
      “[RDBシステム名.]データベース名”を指定します。RDBシステム名には、データベースの存在するSymfoware/RDBのシステム名を指定します。省略した場合は、環境変数RDBNAMEに指定されたRDBシステム名が有効となります。

    • リモートのSymfoware/RDBと接続する場合は、任意の文字列を指定することができます。ただし、同じSQLサーバ名を持つSERVER_SPECがクライアント用の動作環境ファイルに指定されていることが必要です。

  • SQLサーバ名は、文字列定数または文字列型の埋込み変数で指定します。

コネクション名
  • コネクション名は、複数のコネクションを接続する場合に、コネクションを識別する名前を指定します。ただし、コネクション名は一意であることが必要です。

  • コネクション名を省略した場合、SQLサーバ名がコネクション名になります。

  • コネクション名は、文字列定数または文字列型の埋込み変数で指定します。

USER(ユーザ指定)
  • ユーザ指定は、認可識別子とパスワードを斜線“/”で区切って指定します。認可識別子は、OSのログイン名または利用者名を指定します。

  • 認可識別子は、CREATE USER文において登録されている必要があります。

  • 標準セキュリティ運用の場合は、パスワードを省略することはできません。

  • OSのログイン名を使用する場合は、パスワードが設定されているログイン名でなければなりません。

  • ユーザ指定を省略した場合は、クライアント用の動作環境ファイルの実行パラメタ

“DEFAULT_CONNECTION”に指定された情報が有効となります。ただし、パスワードをクライアント用の動作環境ファイルに記述することは、セキュリティ上望ましくないので使用しないでください。

DEFAULT
  • DEFAULTを指定した場合は、クライアント用の動作環境ファイルの実行パラメタ“DEFAULT_CONNECTION”に指定された情報が有効となります。ただし、ローカル接続の場合は利用者名は無視されます。

使用例

1

ローカルのSymfoware/RDBと接続する場合(マルチRDB運用の場合)

CONNECT TO 'SYS1.DB01'
2

ローカルのSymfoware/RDBと接続する場合(マルチRDB運用ではない場合)

CONNECT TO 'DB01'
3

リモートのSymfoware/RDBと接続する場合

CONNECT TO 'SV1' USER 'USER1/777###FF'

備考.コネクション名を省略しているためコネクション名は SQLサーバ名と同じ“SV1”となります。ロールを定義します。ロール定義文は、スキーマ要素に含まれます。

4

リモートのSymfoware/RDBと接続する場合で、SQLサーバ名、認可識別子およびパスワードをホスト変数で指定します。

EXEC SQL BEGIN DECLARE SECTION;
  VARCHAR server[13];
  VARCHAR user[26]; 
EXEC SQL END DECLARE SECTION;
            : 
  strcpy(server.sqlvar,"SV1");
  server.sqllen = strlen(server.sqlvar);
  strcpy(user.sqlvar,"USER1/777###FF");
  user.sqllen = strlen(user.sqlvar);
EXEC SQL CONNECT TO :server USER :user;

備考. コネクション名を省略しているためコネクション名は SQLサーバ名と同じ“SV1”となります。